Заполнение прямоугольной матрицы по спирали, начиная с левого верхнего угла - C (СИ)
Формулировка задачи:
Помогите с решением
Дана пустая прямоугольнай матрица [mхn].Заполнить ее целыми числами от 1 до [mхn] по спирали начиная с левого верхнего угла
Решение задачи: «Заполнение прямоугольной матрицы по спирали, начиная с левого верхнего угла»
textual
Листинг программы
#include <stdio.h> #include <conio.h> #define N 10 #define M 20 int main(int argc, char** argv) { int A[N][M] = { { 0 } }; int n = 0; int r1 = 0; int r2 = 0; for (int r1 = 0; r1 < N / 2; r1++) { for (int j1 = r1; j1 < M - r1; j1++) A[r1][j1] = ++n; for (int i1 = r1 + 1; i1 < N - r1; i1++) A[i1][M - r1 - 1] = ++n; for (int j2 = M - r1 - 2; j2 >= r1; j2--) A[N - r1 - 1][j2] = ++n; for (int i2 = N - r1 - 2; i2 >= r1 + 1; i2--) A[i2][r1] = ++n; } for (int i = 0; i < N; i++) { for (int j = 0; j < M; j++) printf("%d ", A[i][j]); printf("\n"); } _getch(); return 0; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д