Побочная диагональ - Pascal ABC
Формулировка задачи:
Помогите, пожалуйста
Дано число n, n 100 . Создайте массив n×n и заполните его по следующему правилу:
- числа на диагонали, идущей из правого верхнего в левый нижний угол, равны 1;
- числа, стоящие выше этой диагонали, равны 0;
- числа, стоящие ниже этой диагонали, равны 2.
Эта задача informatics не нравится
Как ее сделать эффективнее?
Вот что пишет сам автор:Объявим переменные целого типа 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. В конце двумя циклами выводим каждый по отдельности не забывая о том что нужно вывести через пробел элементы и переход на новую строку.
Как это сделать?
Решение задачи: «Побочная диагональ»
textual
Листинг программы
Var i,j,n:integer; a:array [1..300,1..300] of integer; Begin write('Введите N: '); readln(n); For i:=1 to n do For j:=1 to n do if j<i then a[n-i+1,j]:=0 else if j=i then a[n-i+1,j]:=1 else a[n-i+1,j]:=2; For i:=1 to n do begin For j:=1 to n do write(a[i,j],' '); writeln; end; End.
Объяснение кода листинга программы
- В начале кода объявляются переменные i, j и n типа integer.
- Затем объявляется массив a типа array[1..300,1..300] of integer.
- После этого происходит чтение значения переменной n с помощью функции readln.
- Далее идет цикл for, который выполняется n раз.
- Внутри первого цикла for происходит проверка условия j<i. Если это условие истинно, то в ячейку массива a[n-i+1,j] записывается значение 0.
- Если условие j=i истинно, то в ячейку массива a[n-i+1,j] записывается значение 1.
- Если условие j>i истинно, то в ячейку массива a[n-i+1,j] записывается значение 2.
- После завершения первого цикла for начинается второй цикл for, который проходит по всем элементам массива a.
- Внутри второго цикла for происходит вывод значений ячеек массива a с помощью функции write.
- После завершения второго цикла for программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д