Найти произведение нечетных отрицательных элементов каждой строки матрицы, результат записать в массив - PascalABC.NET
Формулировка задачи:
Помогите пожалуйста написать программку:
"Найти произведение нечетных отрицательных элементов каждой строки матрицы , результат записать в одномерный массив."
заранее очень благодарен
Решение задачи: «Найти произведение нечетных отрицательных элементов каждой строки матрицы, результат записать в массив»
textual
Листинг программы
begin
var Rows := ReadLnInteger(' Строк = ');
var Cols := ReadLnInteger('Колонок = ');
WriteLn('Сгенерирован массив случайных чисел:');
Randomize;
var a : array [,] of Integer; SetLength(a, Rows, Cols);
var b : array of Integer; SetLength(b, Rows);
for var Row := 0 to Rows-1 do
begin
b[Row] := 1;
for var Col := 0 to Cols-1 do
begin
a[Row, Col] := Random(-10, +10);
if odd(a[Row, Col]) and (a[Row, Col] < 0) then
b[Row] *= a[Row, Col];
Write(a[Row, Col]:3);
end;
WriteLn;
end;
WriteLn('Массив произведений нечётных отрицательных элементов каждой строки:', NewLine, b);
end.
Объяснение кода листинга программы
- Вводится количество строк и столбцов матрицы
- Выводится сообщение о генерации массива случайных чисел
- Инициализируется массив a случайными отрицательными числами
- Инициализируется массив b единицами
- Происходит два вложенных цикла:
- внешний цикл перебирает строки матрицы
- внутренний цикл перебирает столбцы матрицы
- во внутреннем цикле проверяется нечетность и отрицательность элемента
- если условия выполняются, то произведение этого элемента и текущего значения b записывается в b
- выводится значение элемента матрицы
- После завершения циклов выводится сообщение о массиве произведений нечётных отрицательных элементов каждой строки и сам массив