Помощь - Поиск - Пользователи - Календарь
Полная версия: Вычислить сумму с точностью
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
-Alex-
Заданны действительные числа x<>0, E>0. Вычислить сумму с точностью до Е(10-6). Определить количество слагаемых. В процессе
вычисления выдать на экран промежуточные результаты.
файл, с формулой webfile.ru/631015
Буду благодарен за помощь...
Нужен аглоритм решения.. я никак не могу разобраться, все не выходит... да не выходит..

М
А сюда сложно прикрепить?
Нажмите для просмотра прикрепленного файла
volvo

Altair
Проверь это
var
x,e,k,s,ai:double;
n:longint;
begin
x:=1; k:=1; e:=10E-6; s:=0; ai:=0;
repeat
repeat
ai:=(sqrt(abs(x)))/(k*k*k);
s:=s+ai;
k:=k+1;
inc(n);
until (abs(ai/s)<e) or (n>10000000);
x:=x+1; k:=1
until x>6;
writeln(s);
writeln('chislo slogaemih =',n);
readln
end.

Мне только кажется я с вычислением точности намутил. у меня ночь уже, спать хочу blum.gif
Altair
да неврено!
точность вот что значит,
a[i] элемент должен отличаться от a[i-1] на eps...
значит надо ввести еще переменную где сохранять предыдущий член суммы, и смотреть разницу разницу между a[i] и a[i-1] .. и сравнивать ее с e.
доделаешь
Altair
атк вроде
var
x,e,k,s,ai,save:double;
n:longint;
begin
x:=1; k:=1; e:=10E-6; s:=0; ai:=0;
repeat
repeat
save:=ai;
ai:=(sqrt(abs(x)))/(k*k*k);
s:=s+ai;
k:=k+1;
inc(n);
until (abs(ai-save)<e) or (n>10000000);
x:=x+1; k:=1
until x>6;
writeln(s);
writeln('chislo slogaemih =',n);
readln
end.
volvo
To: Altair
Мне показалось, или при увеличении X переменная K должна сбрасываться в 1-цу? rolleyes.gif
Altair
volvo, замнем, никто не видел! secret.gif



!tongue1.gif

(исправил secret.gif )
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.