двумерные массивы с++ вывод диагональных элементов матрицы?
надо вывести диагональные элементы матрицы при условии что кол. строк равно кол. столбцов
надо вывести диагональные элементы матрицы при условии что кол. строк равно кол. столбцов
Ага, только вложенных циклов для вывода диагоналей нам и не хватало.
#include
#include
#include
#include
using namespace std;
#define n 5
int main() {
srand(time(0));
int a[n][n];
for (int r = 0; r < n; ++r) {
for (int c = 0; c < n; ++c) cout << setw(3) << (a[r][c] = rand() % 100);
cout << endl;
}
cout << "главная: ";
for (int c = 0; c < n; ++c) cout << setw(3) << a[c][c];
cout << "\nпобочная: ";
for (int c = 0; c < n; ++c) cout << setw(3) << a[c][n - 1 - c];
}
Кинул на почту
цикл от i=1 до количества строк в матрице
цикл от j=1 до количества строк в матрице
вывести элемент матрицы [i,j]
это одна диагональ
цикл от i=1 до количества строк в матрице
цикл от j=количество строк в матрице до 1 с шагом -1
вывести элемент матрицы [i,j]
вторая диагональ
На С++ сам напишешь, алгоритм дал
Главная диагональ: i = N-j+1
Побочная диагональ: i = j