Язык Си
Задан двумерный массив, размерность n*n. Вывести на экран элементы боковой диагонали, элементы выше боковой диагонали и элементы ниже боковой диагонали.
Ответы
Ответ:
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
srand(time(0));
int n;
cout << "ENTER THE SIZE: ";
cin >> n;
int **arr = new int *[n];
for(int i = 0; i < n; i++) arr[i] = new int [n];
for(int i = 0; i < n; i++)
{
for(int j = 0; j < n; j++)
cout << (arr[i][j] = rand()%100) << ' ';
cout << endl;
}
cout << "DIAG: ";
for(int i = 0; i < n; i++) cout << arr[i][i] << ' ';
cout << endl;
cout << "LOWER: ";
for(int i = 0; i < n; i++) for(int j = 0; j < i; j++) cout << arr[i][j] << ' ';
cout << endl;
cout << "HIGHER: ";
for(int i = 0; i < n; i++) for(int j = i+1; j < n; j++) cout << arr[i][j] << ' ';
for(int i = 0; i < n; i++) delete [] arr[i];
delete [] arr;
return 0;
}
Объяснение:
n - размер массива
Далее: DIAG - вывод диагонали, HIGHER - вывод выше диагонали, LOWER - вывод ниже диагонали