Решение задачи "Побочная диагональ" с Mccme

С пояснением   Просмотров: 13


Дано число n, \( n\le100 \) . Создайте массив n×n и заполните его по следующему правилу:
- числа на диагонали, идущей из правого верхнего в левый нижний угол, равны 1;
- числа, стоящие выше этой диагонали, равны 0;
- числа, стоящие ниже этой диагонали, равны 2.

Код

#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n;
    cin >> n;
    int a[n][n];
    for(int i = 0; i < n; ++i){
        for(int j = 0; j < n - i - 1; ++j)
            a[i][j] = 0;
        a[i][n - i - 1] = 1;
        for(int j = n - i; j < n; ++j)
            a[i][j] = 2;
    }
    for(int i = 0; i < n; ++i){
        for(int j = 0; j < n; ++j)
            cout << a[i][j] << " ";
        cout << endl;
    }
    return 0;
}

         

 Администратор Photo Автор: Администратор


Объявим переменные целого типа i,j,n; и еще массив a[1..300][1..300]. Задаём число n. Пробегаем циклом с 1 до n и счетчиком i. Внутри цикла зададим еще один цикл с 1 до n и с счетчиком j. Внутри второго цикла проверяем if-ом если j Объявим переменные целого типа i,j,n; и еще массив a[1..300][1..300]. Задаём число n. Пробегаем циклом с 1 до n и счетчиком i. Внутри цикла зададим еще один цикл с 1 до n и с счетчиком j. Внутри второго цикла проверяем if-ом если j < i то элемент a[n-i-1][j]=0, вторим if-ом проверяем если j=i то a[n-1-i][j]=1, если не выполняются эти два условия то a[n-1-i][j]=2. В конце двумя циклами выводим каждый по отдельности не забывая о том что нужно вывести через пробел элементы и переход на новую строку.

Отправить решение задачи
Чтобы отправить решение вам нужно войти в систему или зарегистрироваться

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться