Получить матрицу по образцу - 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 символа. - После завершения внутреннего цикла выводится переход на новую строку.
- Процедура завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д