Зеркально отобразить элементы матрицы относительно побочной диагонали - C (СИ)
Формулировка задачи:
использовать функцию которая зеркально отобразит элементы матрицы относительно побочной диагонали
Решение задачи: «Зеркально отобразить элементы матрицы относительно побочной диагонали»
textual
Листинг программы
#include <stdio.h> //заголовочный файл который содержит функции ввода/вывода #include <time.h> #include <stdlib.h> #define N 10 void func(int**& ARR, int size_arr) { int temp; int i = 0, j; for (;i < size_arr; i++) for (j = 0; j < size_arr-(i+1); j++) { temp = ARR[i][j]; ARR[i][j] = ARR[size_arr - j -1][size_arr - i-1]; ARR[size_arr - j - 1][size_arr - i - 1] = temp; } } int main() { int i = 0, j; srand((unsigned int)time(NULL)); int** ARR = (int**)malloc(sizeof(int*)*N); for (;i < N; i++) { ARR[i] = (int*)malloc(sizeof(int)*N); for (j = 0; j < N; j++) printf("%d\t", (ARR[i][j] = rand() % 100)); printf("\n"); } func(ARR, N); printf(":::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::\n"); printf(":::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::\n"); for (i=0;i < N; i++) { for (j = 0; j < N; j++) printf("%d\t", ARR[i][j]); printf("\n"); free(ARR[i]); } free(ARR); return NULL; }
Объяснение кода листинга программы
В данном коде:
- Объявлены три переменные: N, i, j. N - это размер матрицы, i и j - это индексы для обхода матрицы.
- Затем идет функция func, которая будет зеркально отображать элементы матрицы относительно побочной диагонали. В этой функции используются два вложенных цикла, которые проходят по всем элементам матрицы. Внутри этих циклов происходит обмен элементов.
- В функции main создается матрица ARR размерности NxN. Все элементы этой матрицы инициализируются случайными числами от 0 до 99.
- Затем вызывается функция func, которая зеркально отображает элементы матрицы относительно побочной диагонали.
- После этого выводится исходная матрица, а затем матрица после применения функции func.
- В конце программы все элементы матрицы освобождаются с помощью функции free.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д