Подскажите почему ошибка:
const x=0.2; y :array[1..9]of real=(0.1,0.2,-0.3,-0.04,5,6,-7.03,8,9);
function t(u:real):real;
begin
t:=sin(u)+cos(u);
end;

function p(a,b:integer; s:array[1..9] of real):real;
var i:integer; d:real;
begin
d:=1;
for i:= a to b do
d:=d*v[i];
p:=d;
end;
Begin
cls;
writeln('z(x,y)=',exp(ln(t(x))*3)/p(y,1,9)+sqr(p(y,1,9))/exp(ln(t(x))*2/3));
End.

Ответы

Ответ дал: shavrinatv
0

Ответ:

Объяснение:

Тут смысла нет передавать массив в качестве параметра, т.к. он описан как const .

Текст будет примерно такой

const x=0.2;

 y :array[1..9]of real=(0.1,0.2,-0.3,-0.04,5,6,-7.03,8,9);

function t(u:real):real;

begin

t:=sin(u)+cos(u);

end;

function p(a,b:integer):real;

var i:integer; d:real;

begin

d:=1;

for i:= a to b do

d:=d*y[i];

p:=d;

end;

Begin

cls;

writeln('z(x,y)=',exp(ln(t(x))*3)/p(1,9)+sqr(p(1,9))/exp(ln(t(x))*2/3):6:4);

readln;

End.

Если нужно массив передать в функцию, то его описывают как новый тип переменной и передают

Вот так, например:

const z=9;

type mas=array[1..z] of integer;

var

u :mas;

i:integer;

// Вывод массива на экран

// a -массив n-размер,text - что хотим написать

procedure showmas(b:mas;n:integer;text:string);

var

i:integer;

begin

writeln(text);

for i:=1 to n  do

write(b[i],' ');

readln;

end;

begin

for i:=1 to 9 do

u[i]:= random(20);

showmas(u,10,'Исходный массив u');

end.

Вас заинтересует