28.05.2008, 13:14
общий
это ответ
Здравствуйте, Петров Игорь Ильич!
Решение задачи с пояснениями в приложении.
Приложение:
uses crt;var x,e,sum,y,yi:double;{тип Real в вычислениях лучше не использовать} i:integer;beginclrscr;repeat {проверяем на правильность ввода}write(‘Vvedite znachenie x<3 x=‘);readln(x);if x>=3 then writeln(‘Reshenja net! Vvedite x<3!‘);until x<3;write(‘Vvedite tochnost vychislenij e=‘);readln(e);i:=1;y:=x/3;sum:=0;yi:=1;while abs(y-yi)>e do {пока разница между текущим членом и предыдущим больше погрешности} begin y:=yi; {текущему члену присваиваем значение предыдущего} yi:=yi*(x/3);{считаем очередной член} sum:=sum+yi; {считаем сумму} i:=i+1; {переходим к следующему члену} end;writeln(‘Summa=‘,sum:6:3);readlnend.