Использовать подпрограммы (ввода, вывода, обрабатывающейчасти). Дан массив целых чисел А[M,N], гдеM,N<=10. В каждой строке массива выбратьминимальный и найти их произведение.предмет (программирование)на Pascal ABC Задачи необходимо выполнить с использованием процедур и функций.
procedure ReadArray(var A: TArray); var i, j: integer; begin for i := 1 to M do begin for j := 1 to N do begin write('Enter A[', i, ',', j, ']: '); readln(A[i, j]); end; end; end;
function MinInRow(row: array of integer): integer; var i, min: integer; begin min := row[0]; for i := 1 to High(row) do begin if row[i] < min then min := row[i]; end; MinInRow := min; end;
function CalculateProduct(A: TArray): integer; var i, j, product: integer; row: array of integer; begin product := 1; for i := 1 to M do begin SetLength(row, N); for j := 1 to N do begin row[j - 1] := A[i, j]; end; product := product * MinInRow(row); end; CalculateProduct := product; end;
begin ReadArray(A); writeln('The product of minimum elements in each row is: ', CalculateProduct(A)); end.
program MinProd;
const
M = 3;
N = 4;
type
TArray = array[1..M, 1..N] of integer;
var
A: TArray;
procedure ReadArray(var A: TArray);
var
i, j: integer;
begin
for i := 1 to M do
begin
for j := 1 to N do
begin
write('Enter A[', i, ',', j, ']: ');
readln(A[i, j]);
end;
end;
end;
function MinInRow(row: array of integer): integer;
var
i, min: integer;
begin
min := row[0];
for i := 1 to High(row) do
begin
if row[i] < min then
min := row[i];
end;
MinInRow := min;
end;
function CalculateProduct(A: TArray): integer;
var
i, j, product: integer;
row: array of integer;
begin
product := 1;
for i := 1 to M do
begin
SetLength(row, N);
for j := 1 to N do
begin
row[j - 1] := A[i, j];
end;
product := product * MinInRow(row);
end;
CalculateProduct := product;
end;
begin
ReadArray(A);
writeln('The product of minimum elements in each row is: ', CalculateProduct(A));
end.