Сформировать матрицу по правилу - Pascal ABC (13383)
Формулировка задачи:
подскажите пожалуйста, почему у меня не получается доделать ее
Решение задачи: «Сформировать матрицу по правилу»
textual
Листинг программы
var a:array [1..50, 1..50] of byte;
n,i,j: byte;
begin
write('ââåäèòå n: ');
readln(n);
for i:=1 to n do
begin
for j:=1 to n do
begin
if j<=n-i+1 then a[i,j]:=i
else a[i,j]:=0;
write(a[i,j]:3);
end;
writeln;
end
end.
Объяснение кода листинга программы
- Создается переменная
aтипаarray [1..50, 1..50] of byte. Это означает, чтоaпредставляет собой матрицу размером 50x50, где каждый элемент является байтом. - Затем определяются три переменные:
n,iиj. Их типы также являются байтами. - Выводится сообщение
ââåäèòå n:, гдеn- это значение переменнойn. - Далее идет цикл
for, который выполняетсяnраз. - Внутри цикла
forтакже идет другой циклfor, который также выполняетсяnраз. - Внутренний цикл проверяет, если значение переменной
jменьше или равноn-i+1. Если это условие выполняется, то значение элемента матрицыa[i,j]устанавливается равнымi. Если условие не выполняется, то значение элемента устанавливается равным нулю. - После завершения внутреннего цикла выводится значение элемента матрицы
a[i,j]с помощью оператораwrite. Значение выводится в формате3, что означает, что оно будет записано в шестнадцатеричной системе с тремя знаками после запятой. - После завершения внешнего цикла выводится символ новой строки с помощью оператора
writeln. - Код завершается.