Процедура: вычисление произведения отрицательных элементов массива - Free Pascal
Формулировка задачи:
Помогите пожалуйств составить подпрограмму - процедуры вычисления произведения отрицательных элементов массива B(2×3)rightarrow PO и использовать ее для вычисления выражения: X(i - нижний индекс)= а^2(i - нижний индекс)/2РО
В(i,j -нижний индекс)=|-0.4 2.8 -12.6|
|5.5 -0.5 6.2 |
a(i -нижний индекс)=10.2;8;25. Буду очень благодарен.
Решение задачи: «Процедура: вычисление произведения отрицательных элементов массива»
textual
Листинг программы
type arr = array[1..3] of double; matrix = array[1..2, 1..3] of double; procedure pn(const x: matrix; var p: double); var i, j: integer; begin p := 1; for i := 1 to 2 do for j := 1 to 3 do if x[i, j] < 0 then p := p * x[i, j] end; const b: matrix = ((-0.4, 2.8, -12.6), (5.5, -0.5, 6.2)); var a: arr = (10.2, 8, 25); x: arr; po: double; i, j: integer; begin writeln('Матрица B:'); for i := 1 to 2 do begin for j := 1 to 3 do write(b[i, j]:5:1); writeln end; pn(b, po); writeln('Произведение отрицательных элементов = ', po:0:2); writeln('Вектор A:'); for i := 1 to 3 do write(a[i]:6:2); writeln; writeln('Вектор X:'); for i := 1 to 3 do begin x[i] := sqr(a[i]) / 2 / po; write(x[i]:19:13) end; readln end.
Объяснение кода листинга программы
В данном коде на языке Free Pascal реализована процедура вычисления произведения отрицательных элементов матрицы.
- Тип данных arr определен как массив из трех элементов типа double.
- Тип данных matrix определен как массив из двух строк и трех столбцов элементов типа double.
- В процедуре pn(const x: matrix; var p: double) происходит итеративное перемножение отрицательных элементов матрицы x, результат сохраняется в переменной p.
- В начале программы определена константная матрица b типа matrix, заполненная отрицательными числами.
- Далее определены переменные a типа arr, po типа double, а также i и j типа integer.
- Выводится матрица b на экран.
- Вычисляется произведение отрицательных элементов матрицы b и сохраняется в переменной po.
- Выводится сообщение с произведением отрицательных элементов матрицы b.
- Выводится вектор a на экран.
- Вычисляется вектор X по формуле sqr(a[i]) / (2*po) для каждого элемента массива a.
- Выводится вектор X на экран.
- Ввод с клавиатуры ничего не требуется в данной программе.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д