Вот, написал. Но она выдает неверные результаты!!! Не пойму в чем причина, вроде бы все правильно составлено. Покажи преподу, может он подскажет
var
s,y,e,x,nf:real;
n:integer;
begin
write('Введите число x: ');
readln(x);
write('Введите точность вычислений: ');
readln(e);
nf:=1;
s:=1;
n:=1;
y:=1;
while abs(y)>=e do
begin
n:=n+1;
nf:=(2*n-1)*(2*n-2)*nf; //здесь вычисляем факториал
y:=power(-1,n+1)*power(x,2*n-1)/nf;
if abs(y)>=e then s:=s+y
end;
writeln('sin(',x,')=',s)
end.