Сформировать матрицу по правилу - Pascal ABC (13383)
Формулировка задачи:
подскажите пожалуйста, почему у меня не получается доделать ее
Листинг программы
- Var A : array [1..50, 1..50] of shortint; i,j: byte;
- n,k: integer;
- begin
- write('введите n: ');
- readln(n);
- begin
- For j:=1 to n do
- begin
- k:= n-j+1;
- For i:=1 to n do A[i,j]:=i;
- end;
- For i:=1 to n do
- begin
- For j:=1 to n do Write(A[i,j]:3);
- Writeln;
- end;
- end;
- end.
Решение задачи: «Сформировать матрицу по правилу»
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
. - Код завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д