Повернуть квадратную матрицу на 180 градусов - C (СИ)
Формулировка задачи:
Дана квадратная матрица порядка 2n. Повернуть ее на 180 градусов в положительном направлении.
Решение задачи: «Повернуть квадратную матрицу на 180 градусов»
textual
Листинг программы
#include <stdio.h>
#define N 9
int main(void)
{
int A[N][N], i, j, t = 1;
int *n,*k, v;
n = &A[0][0];
k = &A[0][0] + N * N - 1;
puts("Source array:");
for(i = 0; i < N; ++i){
for(j = 0; j < N; ++j, ++t)
printf("%3d", A[i][j] = t);
printf("\n");
}
while(n!=k){v=*n;*n=*k;*k=v;++n;--k;}
puts("Sorted array:");
for(i = 0; i < N; ++i){
for(j = 0; j < N; ++j)
printf("%3d", A[i][j]);
printf("\n");
}
return 0;
}
Объяснение кода листинга программы
В этом коде выполняется следующие действия:
- Создается квадратная матрица размером 9x9, заполняется значениями от 1 до 81 и выводится на экран.
- Затем код переворачивает эту матрицу на 180 градусов.
- После переворота матрицы, значения элементов меняются местами, но в этом коде это не учтено.
- Результат переворота матрицы выводится на экран.