Дано число n, n <=100 . Создайте массив n×n и заполните его по следующему правилу:
- числа на диагонали, идущей из правого верхнего в левый нижний угол, равны 1;
- числа, стоящие выше этой диагонали, равны 0;
- числа, стоящие ниже этой диагонали, равны 2.
Входные данные
Программа получает на вход число n.
Выходные данные
Необходимо вывести полученный массив. Числа разделяйте одним пробелом.
Примеры
входные данные
4
выходные данные
0 0 0 1
0 0 1 2
0 1 2 2
1 2 2 2
#include
using namespace std;
int main()
{
int a[100][100], n;
cin >> n;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
if (i + j < n - 1)
a[ i ][ j ] = 0;
else if (i + j == n - 1)
a[i][j] = 1;
else
a[i][j] = 2;
}
cout << a[i][j];
cout << endl;
}
return 0;
}
не получается по-человечески вывести матрицу, особенно когда ставлю оператор for, знаю, тупая ошибка
Объяснение:
cout << endl; Нужно поставить после первой фигурной скобки.
У тебя в столбик матрица выходит.