В двумерном массиве вычислить произведение элементов в К-столбце - Pascal ABC
Формулировка задачи:
В двумерном массиве вычислить произведение элементов в К-столбце
Решение задачи: «В двумерном массиве вычислить произведение элементов в К-столбце»
textual
Листинг программы
var
ar: Array[Byte, Byte] Of Real;
i, j: Byte;
k, n, m: Integer;
mult: Extended; //Double | Real
begin
repeat
Write('Input row count(1..256): ');
ReadLn(n);
until ((n > 0) And (n < 257));
repeat
Write('Input column count(1..256): ');
ReadLn(m);
until ((m > 0) And (m < 257));
repeat
Write('Input K(1..', m,'): ');
ReadLn(k);
until ((k > 0) And (k <= m));
mult := 1;
Randomize;
WriteLn('Original matrix:');
for i := 0 to n - 1 do
begin
for j := 0 to m - 1 do
begin
ar[i, j] := Random * 198 - 99;
Write(ar[i, j]:7:2);
if (j = k - 1)
then
mult := mult * ar[i, j];
end;
WriteLn;
end;
WriteLn; WriteLn('ANSWER=', mult:0:2);
end.
Объяснение кода листинга программы
- Создается переменная ar типа Array[Byte, Byte] Of Real, которая представляет двумерный массив для хранения чисел с плавающей точкой.
- Задаются три переменные i, j и k типа Byte, которые будут использоваться для прохода по массиву.
- Задается переменная n типа Integer, которая будет использоваться для определения количества строк в массиве.
- Задается переменная m типа Integer, которая будет использоваться для определения количества столбцов в массиве.
- Задается переменная mult типа Extended (Double | Real), которая будет использоваться для хранения произведения элементов в К-столбце.
- Используется цикл repeat для получения от пользователя количества строк и столбцов в массиве.
- Внутри цикла повторяется запрос количества строк и столбцов, пока это количество не будет удовлетворять заданным условиям (больше нуля и меньше 256).
- Задается переменная k типа Integer, которая будет использоваться для определения индекса столбца, в котором нужно вычислять произведение.
- Используется функция Randomize для инициализации генератора случайных чисел.
- Выводится сообщение с оригинальным массивом и его элементами.
- Внутри цикла повторяется запрос строки и столбца, пока это количество не будет удовлетворять заданным условиям (больше нуля и меньше 256).
- Если текущая строка и столбец совпадают с k-ым столбцом, то произведение элементов этого столбца умножается на mult.
- После завершения всех итераций выводится ответ.