Преобразовать матрицу так, чтобы она была симметрична относительно главной диагонали - C (СИ)
Формулировка задачи:
Помогите, напишите программу:
Задано квадратную матрицу А [4 × 4]. Превратить ее таким образом, чтобы новая матрица была симметрична относительно главной диагонали, то есть с12 = а21, с13 = а31, с14 = А41, с23 = А32 и так далее.
Решение задачи: «Преобразовать матрицу так, чтобы она была симметрична относительно главной диагонали»
textual
Листинг программы
#include "stdafx.h" #include <stdlib.h> int main() { srand(time(NULL)); int a[4][4]; printf("Matrix:\n"); for (size_t i = 0; i < 4; i++) { for (size_t j = 0; j < 4; j++) { a[i][j] = -10 + rand() % 20; printf("%i\t", a[i][j]); } printf("\n"); } for (size_t i = 0; i < 4; i++) for (size_t j = 0; j < i; j++) { int x = a[i][j]; a[i][j] = a[j][i]; a[j][i] = x; } printf("New matrix:\n"); for (size_t i = 0; i < 4; i++) { for (size_t j = 0; j < 4; j++) printf("%i\t", a[i][j]); printf("\n"); } getch(); }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Инициализируем генератор случайных чисел
- Создаем двумерный массив и выводим исходную матрицу на экран
- Проходим по элементам матрицы в порядке обратном вложенности (сначала по столбцам, потом по строкам)
- Обмениваем значения элементов соответствующих строк
- Выводим полученную матрицу на экран
- Ждем нажатия клавиши для завершения программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д