Получить матрицу по образцу - Pascal (80294)

Узнай цену своей работы

Формулировка задачи:

Дано натуральное число n. n от 3 до 10. нужно получить квадратную матрицу вида n*n
n   n-1   n-2    n-3   ...   1
n-1  n    n-1    n-2   ...   2
n-2 n-1    n     n-1         3
n-3 n-2   n-1     n    ...   4
. . . . . . . . . . . . . . .  
. . . . . . . . . . . . . . .  
. . . . . . . . . . . . . . .  
 1   2     3      4  ....    n

Решение задачи: «Получить матрицу по образцу»

textual
Листинг программы
var a:array[1..20,1..20] of byte;
    n,i,j:byte;
begin
repeat
write('Размер матрицы от 2 до 20 n=');
readln(n);
until n in [1..20];
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=n-abs(i-j);
    write(a[i,j]:3);
   end;
  writeln;
 end;
end.

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

  1. Создается переменная массива a размером 20x20.
  2. Создается переменная n для хранения размера матрицы, и переменные i и j для итерации по матрице.
  3. Выполняется цикл повторения, в котором пользователю предлагается ввести размер матрицы от 2 до 20.
  4. Ввод пользователя сохраняется в переменной n.
  5. Если введенное значение n находится в диапазоне от 1 до 20, цикл повторения завершается.
  6. Выполняется внешний цикл от 1 до n.
  7. Для каждого значения i внутренний цикл выполняется от 1 до n.
  8. В каждой итерации в ячейку массива a записывается значение n минус модуль разности i и j.
  9. Значение в ячейке a[i, j] выводится на экран с шириной поля в 3 символа.
  10. После завершения внутреннего цикла выводится переход на новую строку.
  11. Процедура завершается.

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


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

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

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