program z25;
Var
x, y, eps: real;
s, n: integer;
Begin
WriteLn('Eps:='); ReadLn(eps);
WriteLn('X:='); ReadLn(x);
n:=1;
y:=x;
While Abs (s(n+1))<Eps Do
Begin
S(n+1) = (0.5/n-1.0)*x*S(n);
n:=n+1;
y:=1-x/2;
x:=y+s;
End;
WriteLn(x, eps);
End.
Ошибка в программе.
У меня возникла проблема с решением вот такой задачи:
Вычислить с заданной точностью ε значение функции Y для каждого из 20 значений Х:
Y = 1 – X / 2 + (1*3*X2) / (2*4) – (1*3*5*X3) / (2*4*6) +
+ (1*3*5*7*X4) / (2*4*6*8) – ...
Значения Х и ε ввести.
Вот мои наработки:
Код:
Заранее всем благодарен.
И?...
Код:
program z25;
Var
x, y, eps,mem: real;
n: integer;
Begin
WriteLn('Eps:='); ReadLn(eps);
WriteLn('X:='); ReadLn(x);
mem:=1;
y:=1;
While Abs (mem)>=Eps Do
Begin
mem:=-mem*x*(2*n-1)/(2*n);
y=y+mem;
n:=n+1;
End;
WriteLn(y);
End.
Var
x, y, eps,mem: real;
n: integer;
Begin
WriteLn('Eps:='); ReadLn(eps);
WriteLn('X:='); ReadLn(x);
mem:=1;
y:=1;
While Abs (mem)>=Eps Do
Begin
mem:=-mem*x*(2*n-1)/(2*n);
y=y+mem;
n:=n+1;
End;
WriteLn(y);
End.
примерно так