Program toch;
uses crt;
var x,e,s,sk,t:real;
k:longint;
begin
clrscr;
write('введите x=');
readln(x);
e:=0.000001;
s:=0;
t:=-x;
sk:=-x;
k:=1;
while abs(s-sk)>e do
begin
s:=sk;
k:=k+1;
t:=-t*x;
sk:=sk+t/k;
end;
write('Результат=',s:0:8,' Точность вычисления=',abs(s-sk):0:8);
readln
end.
e:=0.000001;//заданная точность вычислений суммы ряда
s:=0;//итоговая сумма, пока=0
t:=-x;//значение текущего члена ряда, пока первое
sk:=-x;//предыдущая сумма, пока первая
k:=1;//номнр элемента в ряду
while abs(s-sk)>e do/пока модуль разности соседних сумм больше точности, повторяем
begin
s:=sk;//присваиваем сумме предыдущее значение
k:=k+1;//увеличиваем номер
t:=-t*x;//рекуррентно вычисляем очередной член ряда, в этом случае меняем знак и домножаем на х
sk:=sk+t/k;//считаем новую текущую сумму
end;