Побочная диагональ - 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.

Объяснение кода листинга программы

  1. В начале кода объявляются переменные i, j и n типа integer.
  2. Затем объявляется массив a типа array[1..300,1..300] of integer.
  3. После этого происходит чтение значения переменной n с помощью функции readln.
  4. Далее идет цикл for, который выполняется n раз.
  5. Внутри первого цикла for происходит проверка условия j<i. Если это условие истинно, то в ячейку массива a[n-i+1,j] записывается значение 0.
  6. Если условие j=i истинно, то в ячейку массива a[n-i+1,j] записывается значение 1.
  7. Если условие j>i истинно, то в ячейку массива a[n-i+1,j] записывается значение 2.
  8. После завершения первого цикла for начинается второй цикл for, который проходит по всем элементам массива a.
  9. Внутри второго цикла for происходит вывод значений ячеек массива a с помощью функции write.
  10. После завершения второго цикла for программа завершается.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.2 из 5
Похожие ответы