Вычислить произведение - Free Pascal (165)
Формулировка задачи:
Помогите пожалуйста исправить ошибки в программе.
Решение задачи: «Вычислить произведение»
textual
Листинг программы
const n=4;
type mas=array[1..n] of real;
const
B:mas=(-1.5,0.09,0.82,1.13);
C:mas=(0.85,1.4,-1.12,-3.24);
D:mas=(0.25,0.21,0.12,0.39);
function Pr(x:mas;k:integer):real;
var i:integer;
p,f:real;
begin
p:=1;
f:=1;
for i:=1 to n do
begin
f:=f*i;
p:=p*(k+x[i])/f;
end;
Pr:=p;
end;
var i:byte;
begin
writeln('Массив В');
for i:=1 to n do
write(B[i]:6:2);
writeln;
writeln('Произведение=',Pr(B,10):0:4);
writeln('Массив C');
for i:=1 to n do
write(C[i]:6:2);
writeln;
writeln('Произведение=',Pr(C,20):0:4);
writeln('Массив D');
for i:=1 to n do
write(D[i]:6:2);
writeln;
writeln('Произведение=',Pr(D,30):0:4);
readln
end.
Объяснение кода листинга программы
- Объявлены константы: n=4, B, C, D - массивы размером 4 элемента.
- Функция Pr вычисляет произведение массива по формуле p*=(k+x[i])/f, где k - параметр функции, x[i] - элемент массива, f - множитель, идущий от начала вычисления произведения.
- В основной программе выводятся на экран массивы B, C, D по одному элементу за раз с шагом 2 символа и вычисляются произведения с помощью функции Pr, которые также выводятся на экран.