0 / 0 / 0
Регистрация: 19.11.2014
Сообщений: 2
1

Вычислить с заданной точностью, вывести количество итераций

01.12.2014, 15:22. Показов 1790. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Даны действительные числа x, ε (x не равно 0, ε>0). Вычислить с точностью ε, в конце надо вывести количество итераций, как это сделать?

https://www.cyberforum.ru/cgi-bin/latex.cgi?\sum_{k=0}^{\infty}\frac{(-1)^kx^{4k+1}}{2k!(4k+1)}

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var x,st,sp,eps:real;
k,i,f:integer;
begin
Write ('X=');
readln(x);
Write ('eps=');
readln(eps);
k:=0;
st:=x/1;
repeat
inc(k);
sp:=st;
f:=1;
for i:=1 to 2*k do
f:=f*i;
if k mod 2=0 then st:=st+(exp((4*k+1)*ln(x))/(f*(4*k+1)))
else st:=st+(-exp((4*k+1)*ln(x))/(f*(4*k+1)));
until abs(st-sp)>=eps;
writeln ('Summ=',st:0:2);
readln
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.12.2014, 15:22
Ответы с готовыми решениями:

Вычислить сумму ряда и вывести количество итераций с заданной точностью
в общем: 20 членов ряда сумма=1-3х^2+5х^4-7х^6+9х^8....и тд.... х=1/2, эпселент=0.0001

Метод простых итераций с заданной точностью на С++
Помогите пожалуйста,дано такое задание.Первую часть,с методом простых итераций смогла сделать,вот...

Вычислить сумму ряда с заданной точностью и определить количество проходов
Дано натуральное число n. Вычислить формулу по заданию с точностью до 0.001, определив количество...

Решить уравнение с заданной точностью методом итераций
Уравнение x – sinx – 0,25 = 0 на отрезке с точностью e методом итерации Помогите наладить код...

1
Модератор
9731 / 5069 / 3284
Регистрация: 17.08.2012
Сообщений: 15,608
01.12.2014, 18:42 2
Цитата Сообщение от svenchik Посмотреть сообщение
for i:=1 to 2*k do f:=f*i;
В Вашей программе невозможно вычисление более 10 членов, так как более чем 20! в тип integer не помещается. Также при x≤0 программа завершится аварийно из-за попытки вычислить ln(x), который при x≤0 не определён. Похвально, что Вы привели код программы, но, следует признать, что код этот ни на что не пригоден. JokeR.BY в Вашей теме Вычислить сумму ряда с заданной точностью написал для Вас куда как более верный код, вполне удовлетворяющий Вашему заданию. Даже и количество итераций выводится, только не в конце, а при каждой итерации. Чуть подправить - и будет то, что надо. Однако, Вы не приняли код от JokeR.BY во внимание, видимо, по причине Вашей малой осведомлённости. Про рекуррентные соотношения слышали когда-нибудь? Удобная штука. Это когда следующий член последовательности вычисляется, исходя из предыдущего. обычно для этого делится (k+1)-й член на k-й член, либо k-й член выражается через (k+1)-й. Предпочитаю последнее. Итак, находим рекуррентное соотношение.

https://www.cyberforum.ru/cgi-bin/latex.cgi?S=\sum_{k=0}^\infty\frac{(-1)^kx^{4k+1}}{2k!(4k+1)}=\sum_{k=0}^\infty a_k

https://www.cyberforum.ru/cgi-bin/latex.cgi?a_0=x\ ;\ \ a_k=\frac{(-1)^kx^{4k+1}}{2k!(4k+1)}\ ;

https://www.cyberforum.ru/cgi-bin/latex.cgi?a_{k+1}=\frac{(-1)^{k+1}x^{4(k+1)+1}}{(2(k+1))!(4(k+1)+1)}=\frac{(-1)^{k+1}x^{4k+5}}{(2k+2)!(4k+5)}=\frac{(-1)(-1)^kx^4x^{4k+1}}{(2k+1)(2k+2)(2k)!(4k+5)}=\\\\=\frac{-x^4(4k+1)a_k}{(2k+1)(2k+2)(4k+5)}=\frac{-x^4(k+0.25)a_k}{4(k+0.5)(k+1)(k+1.25)}

Рекуррентное соотношение получено. Мой вариант программы, с проверкой корректности входных данных:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
var k: integer;
    x, a, s, eps: real;
begin
  repeat
    write('x = ');
    readln(x);
    if x = 0 then writeln('Error: x = 0, reenter.')
  until x <> 0;
  repeat
    write('eps = ');
    readln(eps);
    if eps <= 0 then writeln('Error: eps <= 0, reenter.')
  until eps > 0;
  k := 0;
  a := x;
  s := a;
  while abs(a) >= eps do
    begin
      a := -a * x * x * x * x * (k + 0.25) / 4 / (k + 0.5) / (k + 1) / (k + 1.25);
      s := s + a;
      inc(k)
    end;
  writeln('Sum = ', s);
  writeln('Count of iteration = ', k + 1);
  readln
end.
Сумма и количество итераций, естественно, получаются те же самые, что и в программе от JokeR.BY. Я в недоумении. Никак не могу найти причину, по которой Вас не устроила программа от JokeR.BY. Разве что, к Вашей неосведомлённости следует ещё добавить Ваше нежелание в чём-либо разбираться.
1
01.12.2014, 18:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.12.2014, 18:42
Помогаю со студенческими работами здесь

Вычислить с заданной точностью сумму ряда и указать количество учтеных слагаемых
Здравствуйте, необходима помощь в решении следующей задачи: Даны действительные числа x, ε...

Методом итераций найти решения уравнений с заданной точностью
Задание такое: x^4+5*x-7=0 методом итераций найти решения уравнений с точностью E=10^(-2) ...

Решить систему линейных уравнений методом итераций с заданной точностью
Методом итераций решите систему линейных уравнений с точностью до 0,001:

Вычислить сумму ряда с точностью e. Определить количество слагаемых, необходимых для достижения заданной точности
В общем, дано такое условие: вычислить сумму ряда с точностью e. Определить количество слагаемых,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru