Вот, написал. Но она выдает неверные результаты!!! Не пойму в чем причина, вроде бы все правильно составлено. Покажи преподу, может он подскажет 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) <span>end.</span>