Сформировать массив P из произведений элементов на диагоналях, которые лежат над главной диагональю матрицы - Pascal ABC
Формулировка задачи:
Дано массив А(M,M). Сформировать массив P из произведений элементов на параллелях, которые лежат над главной диагональю.
Решение задачи: «Сформировать массив P из произведений элементов на диагоналях, которые лежат над главной диагональю матрицы»
textual
Листинг программы
const m=7;
type matr=array[1..m,1..m] of integer;
mas=array[1..m-1]of integer;
var a:matr;
p:mas;
i,j,pr:integer;
begin
writeln('A:');
for i:=1 to m do
begin
for j:=1 to m do
begin
a[i,j]:=1+random(4);
write(a[i,j]:3)
end;
writeln
end;
writeln('P:');
for i:=2 to m do
begin
pr:=1;
for j:=i to m do pr:=pr*a[j-i+1,j];
p[i-1]:=pr;
write(p[i-1],' ')
end;
end.
Объяснение кода листинга программы
В данном коде формируется массив P из произведений элементов на диагоналях, которые лежат над главной диагональю матрицы.
- Переменная m и тип matr определяются в начале кода.
- Переменная mas определяется в конце предыдущего блока кода.
- Переменная a инициализируется в блоке for, где происходит заполнение матрицы случайными числами от 1 до 4.
- Переменные i, j и pr инициализируются в блоке for, где происходит вычисление произведения элементов на диагонали.
- В блоке for для i от 2 до m происходит вычисление произведения элементов на главной диагонали и сохранение результата в переменной pr.
- Для каждого i-го элемента массива P вычисляется произведение элементов на диагонали и сохраняется в переменной p[i-1].
- В блоке for для i от 2 до m происходит вывод значения p[i-1] с пробелом перед ним. Таким образом, данный код выполняет задачу формирования массива P из произведений элементов на диагоналях, которые лежат над главной диагональю матрицы.