Задан квадратный массив а из n строк и n столбцов, n – нечетное число. в предложенном массиве можно выделить две диагонали. эти диагонали отчерчивают четыре треугольника с числами. произвести замену верхнего и нижнего треугольников, правого и левого треугольников. написать на c++!
пример на фото: 1 матрица исходная, 2 матрица после замены.

gerl1999 gerl1999    1   25.12.2019 23:23    4

Ответы
Dimaplayfifa1611 Dimaplayfifa1611  10.10.2020 23:20

#include <iostream>

using namespace std;

int main()

{

const int n = 7;

int mas[n][n] = {

{0, 1, 1, 1, 1, 1, 0},

{3, 0, 1, 1, 1, 0, 4},

{3, 3, 0, 1, 0, 4, 4},

{3, 3, 3, 0, 4, 4, 4},

{3, 3, 0, 2, 0, 4, 4},

{3, 0, 2, 2, 2, 0, 4},

{0, 2, 2, 2, 2, 2, 0}};//инициализируем матрицу

for (int jjj = 0; jjj < (n - 1) / 2; jjj++)

for (int kkk = 1; kkk < n - 1; kkk++)

swap(mas[jjj][kkk], mas[n - 1 - jjj][kkk]);// меняем верхний с нижним

for (int jjj = 0; jjj < (n - 1) / 2; jjj++)

for (int kkk = 1; kkk < n - 1; kkk++)

swap(mas[kkk][jjj], mas[kkk][n - 1 - jjj]);// меняем правый с левым

for (int jjj = 0; jjj < n; jjj++)

{

for (int kkk = 0; kkk < n; kkk++)

cout << mas[jjj][kkk] << " ";

cout << endl;

};//выводим матрицу

}

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика