Повернуть заданную квадратную матрицу на 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(""); for(i = 0; i < N; ++i){ for(j = 0; j < N; ++j) printf("%3d", A[i][j]); printf("\n"); } return 0; }
Объяснение кода листинга программы
В данном коде выполняется поворот квадратной матрицы на 180 градусов в положительном направлении.
- Объявляются переменные:
- A[N][N] - массив, представляющий собой квадратную матрицу размером N на N;
- i, j - индексы, используемые для обхода матрицы;
- t - временная переменная, используемая для обмена значениями элементов матрицы;
- n, k - указатели, используемые для обмена значениями элементов матрицы;
- v - временная переменная, используемая для сохранения значения элемента матрицы;
- N - размер матрицы.
- Выполняется итеративный вывод исходной матрицы с помощью цикла for и функции printf. Значения элементов матрицы выводятся в формате 3-х значного числа.
- Инициализируются указатели n и k. Указатель n указывает на первый элемент матрицы, а указатель k - на последний элемент матрицы.
- Запускается цикл while, который выполняется до тех пор, пока n не станет равен k. В каждой итерации цикла выполняется обмен значениями элементов матрицы, на которые указывают n и k. Для сохранения значения элемента матрицы, на который указывает n, используется временная переменная v.
- Выполняется итеративный вывод повернутой матрицы с помощью цикла for и функции printf. Значения элементов матрицы выводятся в формате 3-х значного числа.
- Функция main() возвращает 0, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д