Заполнить одномерный массив, найдя произведение положительных элементов в каждом столбце матрицы - Turbo Pascal
Формулировка задачи:
Здравствуйте. Написал программу, не могли бы проверить её на правильность?
Дан двумерный массив a, размером (nm). Заполнить одномерный массив, найдя произведение положительных элементов в каждом столбце матрицы.
Решение задачи: «Заполнить одномерный массив, найдя произведение положительных элементов в каждом столбце матрицы»
textual
Листинг программы
program c6; const n=5; const m=8; var a:array[1..n,1..m] of real; b:array[1..m] of real; i,j:integer; p:real; begin randomize; writeln('Матрица'); for i:=1 to n do begin for j:=1 to m do begin a[i,j]:=-3+6*random; write(a[i,j]:5:2) end; writeln end; for j:=1 to m do begin p:=1; for i:=1 to n do if a[i,j]>0 then p:=p*a[i,j]; b[j]:=p end; writeln('Массив произведений'); for i:=1 to m do write(b[i]:0:2,' '); readln end.
Объяснение кода листинга программы
В данном коде объявлены следующие переменные:
- n - количество строк в матрице (в данном случае равно 5);
- m - количество столбцов в матрице (в данном случае равно 8);
- a - одномерный массив, который будет заполняться;
- b - массив, в котором будут храниться произведения положительных элементов каждого столбца;
- i и j - индексы строк и столбцов соответственно;
- p - переменная для хранения произведения.
В начале программы с помощью функции randomize() и команды writeln() выводится сообщение
Матрица
. Затем в цикле for i:=1 до n do выполняется итерация по строкам матрицы. Внутри этого цикла в цикле for j:=1 до m do выполняется итерация по столбцам матрицы. В каждой итерации внутреннего цикла присваивается значение a[i,j] и выводится его значение с помощью команды write(). Значение a[i,j] задается с помощью выражения -3+6*random, где random - это генератор случайных чисел. После завершения итераций по всем строкам и столбцам внутреннего цикла, в переменной p хранится произведение положительных элементов каждого столбца. Затем с помощью команды write() выводится сообщениеМассив произведений
, а также выводятся значения элементов массива b с помощью команды write(). В конце программы с помощью команды readln() происходит ожидание ввода пользователя.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д