Предмет: Информатика, автор: opopzsuhiphop

c++
Створити двовимірний масив 8х10, що складається з цілих чисел. Отриману
матрицю транспонувати та вивести на друк елементи головної діагоналі та
діагоналі, розташованої під головною. Результати розмістити у двох рядках.

Ответы

Автор ответа: PPPOPOCHE
1

Ось приклад коду на C++ для реалізації цієї задачі:

#include <iostream>

#include <algorithm>

const int N = 8;

const int M = 10;

int main() {

int arr[N][M];

// Ініціалізуємо елементи матриці деякими значеннями

for (int i = 0; i < N; ++i) {

for (int j = 0; j < M; ++j) {

arr[i][j] = i + j;

}

}

// Транспонуємо матрицю

for (int i = 0; i < N; ++i) {

for (int j = i+1; j < M; ++j) {

std::swap(arr[i][j], arr[j][i]);

}

}

// Виводимо на друк елементи головної діагоналі та діагоналі, розташованої під нею

std::cout << "Elements of the main diagonal: ";

for (int i = 0; i < N; ++i) {

std::cout << arr[i][i] << " ";

}

std::cout << std::endl << "Elements of the subdiagonal: ";

for (int i = 0; i < N-1; ++i) {

std::cout << arr[i+1][i] << " ";

}

std::cout << std::endl;

return 0;

}

У цьому коді спочатку ініціалізується двовимірний масив 8х10, який складається з цілих чисел. Потім матриця транспонується за допомогою циклів і функції std::swap(). Нарешті, виводяться на друк елемент


opopzsuhiphop: коли запускаю програму, видається помилка.
і чомусь не виводиться сам масив 8х10, лише головна діаголналь і та що під нею :(

Предупреждение C6201 Индекс "9" находится вне диапазона от "0" до "7" для буфера "arr", возможно, размещенного в стеке.
Похожие вопросы