"как вычислить сумму с заданной точностью"


Страницы: 1
Пользователь: sam
Сообщений: 4
Статус: Пользователь
Зарегистрирован:
9 января 2009, 19:13
Был:12 января 2009, 3:16
sam
smsup
Дата: 9 января 2009, 19:31 Сообщение № 1
Вычислить бесконечную сумму с заданной точностью e(e>0).Считать,что
требуемая точность достигнута,если вычислена сумма нескольких первых
слагаемых и очередное слагаемое оказалось по модулю меньше чем е,-это
и все последующие слагаемые можно уже не учитывать.
Пользователь: sam
Сообщений: 4
Статус: Пользователь
Зарегистрирован:
9 января 2009, 19:13
Был:12 января 2009, 3:16
sam
smsup
Дата: 9 января 2009, 19:32 Сообщение № 2
Код на Pascal
  1. Program Z119;
  2. uses crt;
  3. var i,st:integer;
  4. s,e,sl,fak:real;
  5. begin
  6. clrscr;
  7. repeat
  8. writeln('Введите е>0');
  9. readln(e);
  10. until e>0;
  11. s:=0;
  12. i:=1;
  13. fak:=1;
  14. repeat
  15. if i mod 2=0 then
  16. begin
  17. fak:=fak/i;
  18. sl:=fak;
  19. s:=s+sl;
  20. i:=i+1;
  21. writeln('Сумма равна ', s:5:2)
  22. end
  23. else begin
  24. fak:=fak/i;
  25. i:=i+1;
  26. sl:=fak;
  27. s:=s-sl;
  28. writeln('Сумма равна ', s:5:2)
  29. end;
  30. until abs(sl)<=e;
  31. readln
  32. end.
  33.  
При использовании обязательна ссылка на http://DMTSoft.ru
Пользователь: nook
Сообщений: 1
Статус: Незримый
Зарегистрирован:
30 января 2009, 16:21
Был:30 января 2009, 22:49
nook
smsup
Дата: 30 января 2009, 16:24 Сообщение № 3
.
Пользователь: inst
Сообщений: 1
Статус: Незримый
Зарегистрирован:
3 февраля 2009, 20:06
Был:3 февраля 2009, 20:15
inst
smsup
Дата: 3 февраля 2009, 20:11 Сообщение № 4
с заданной точностью значит что последний елемент суммы должен по модулю быть меньше е, в цикле с таким условием считаем сумму и увиличиваем счетчик(он должен быть частью елемента), когда елемент станет меньше е цикл закончится
Пользователь: sveto4ek
Сообщений: 2
Статус: Незримый
Зарегистрирован:
27 марта 2009, 8:01
Был:16 июня 2011, 9:44
sveto4ek
smsup
Дата: 27 марта 2009, 8:24 Сообщение № 5
Код анологичной задачи:
Дана некая функция у и интервал переменной х. х изменяется с заданным шагом.
Задана формула приближенного вычисления функции y для конкретного х.
Требуется вычислить сумму ряда с заданой точностью для каждого х и сравнить полученную сумму с точным значением функции в этой точке. Сумму вычислять с заданной точностью.
для каждого значения х вычислялась бесконечная сумма и точное значение. Далее х увеличивался на заданый шаг и вычисления повторялись.

Код на Pascal
  1. {Вычислить сумму ряда с заданной точностью e}
  2. Const p=3.14;
  3. e=0.001; {точность}
  4. Var S, S1, x, y, a :real;
  5. i, n: Integer;
  6. Begin
  7. x:=0.1; {начало отрезка вычислений}
  8. writeln('|*-*-*-*-*-*-*-*-*-*-*-*-*-*|');
  9. Writeln('| x | function | summa |');
  10. writeln('|*-*-*-*-*-*-*-*-*-*-*-*-*-*|');
  11. While x<=0.8 do begin {цикл прохода по всему отрезку}
  12. S:=0; {обнуляем сумму}
  13. a:=1; {начальные константы,}
  14. n:=1; {зависят от формулы ряда}
  15. While a>e do begin {собственно вычисление суммы}
  16. a:=a*x;
  17. S1:=S;
  18. S:=S+a*Sin(n*p/4); {формула определена заданием}
  19. n:=n+1; {подсчет числа итераций}
  20. end;
  21. y:=(x*Sin(p/4))/(1-2*x*Cos(p/4)+x*x); {точное значение функции}
  22. Write('| ',x:3:1,' |'); {для каждого х}
  23. Write(' ',y:8:5,' |');
  24. Writeln(' ',S:8:5,' |');
  25. writeln('|---------------------------|');
  26. {увеличение х и повтор вычислений}
  27. end;
  28. readln;
  29. End.
  30.  
При использовании обязательна ссылка на http://DMTSoft.ru

Страницы: 1