Решить задачу, используя подпрограмму-процедуру для вычисления текущего значения s(x) с произвольным количеством итераций n и подпрограмму-функцию у(х). Значения х и n вводятся с клавиатуры. s(x)=∑_(k=1)^n*(-1)^k *(2k)^x/(2k)!, y(x)={(e^(-x), x≥s(x),(1/2x)^2, x<s(x).)}
Подскажите, пожалуйста, как в программе правильно отобразить (2k)^x
Code
Program one;
Uses
crt;
Var
i,n:integer;
s,x,y:real;
Procedure SumRyad(n:integer; s,x:real);
Var
i,i1:integer;
fact:longint;
y1:real;
Begin
fact:=1;
i1:=1;
for i:=1 to n do
Begin
fact:=fact*(2*i);
i1:=i1*(-1);
y1:=i1*((2*i)^x/fact);
s:=s+y1;
end;
writeln;
writeln('Сумма ряда', s:9:3);
end;
Function FuncY(x,s:real):real;
Begin
If x>=s then
FuncY:=exp(-x)
else
FuncY:=((1/(2*x))*(1/(2*x)));
end;
Begin
clrscr;
writeln('Задание 3');
writeln('Вычисление значения ряда и функции для заданного х');
write('Введите количество итераций: ');
readln(n);
write('Введите х: ');
readln(x);
SumRyad(n,x,s);
y:=FuncY(x,s);
writeln('Значение функции: ',y:9:3);
readkey;
End.
Люди HELP!!!!