Получить матрицу по образцу - 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.
Объяснение кода листинга программы
- Создается переменная массива
a
размером 20x20. - Создается переменная
n
для хранения размера матрицы, и переменныеi
иj
для итерации по матрице. - Выполняется цикл повторения, в котором пользователю предлагается ввести размер матрицы от 2 до 20.
- Ввод пользователя сохраняется в переменной
n
. - Если введенное значение
n
находится в диапазоне от 1 до 20, цикл повторения завершается. - Выполняется внешний цикл от 1 до
n
. - Для каждого значения
i
внутренний цикл выполняется от 1 доn
. - В каждой итерации в ячейку массива
a
записывается значениеn
минус модуль разностиi
иj
. - Значение в ячейке
a[i, j]
выводится на экран с шириной поля в 3 символа. - После завершения внутреннего цикла выводится переход на новую строку.
- Процедура завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д