В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
Bandit009
Bandit009
22.07.2021 19:46 •  Информатика

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

Показать ответ
Ответ:
angelinaholod72
angelinaholod72
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;

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

}

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота