Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
43 / 43 / 15
Регистрация: 10.09.2013
Сообщений: 293

Найти сумму бесконечного ряда с заданной точностью

03.10.2014, 15:57. Показов 2693. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно вычислить с заданной точностью.
Помогите реализовать, я то не догоняю как это можно сделать.

https://www.cyberforum.ru/cgi-bin/latex.cgi?arctg(x)=\begin{cases}\sum_{i=1}^{\infty} \frac{(-1)^{2i+1} x^{2i+1}}{2i+1} & \text{ , } \left|x \right| \lt 1  \\ \frac{\pi }{2} + \sum_{i=0}^{\infty}\frac{(-1)^i}{(2i-1)x^{2i-1}} & \text{ , } x \gt 1  \\ -\frac{\pi}{2} + \sum_{i=0}^{\infty}\frac{(-1)^i}{(2i-1)x^{2i-1}} & \text{ , } x \lt -1 \end{cases}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.10.2014, 15:57
Ответы с готовыми решениями:

Найти сумму бесконечного ряда с заданной точностью
Народ помогите пожалуйста запрограммировать.:'( Вот что у меня получается... // #include "stdafx.h" #include...

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

Посчитать сумму бесконечного ряда с заданной точностью
Помогите написать программу на С++. необходимо посчитать сумму бесконечного ряда с заданной точностью. Есть код, но считает...

11
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
03.10.2014, 16:03
Цитата Сообщение от Insane__ Посмотреть сообщение
Помогите реализовать
Помочь или сделать за вас? Сделать за вас - в лом. Я и за себя делать частенько ленюсь А вот чтоб помочь, тут желательно увидеть ваши усилия...
0
43 / 43 / 15
Регистрация: 10.09.2013
Сообщений: 293
03.10.2014, 16:38  [ТС]
Байт, мои усилия такие: формулу набрать проблем нет. И что дальше? Крутить цикл 100500 раз? Я думал высчитывать каждое значение формулы и сравнивать с заданной точностью. Если (значение формулы)> exp тогда стоп, мы нашли то что хотели! Но мне кажется, этот алгоритм неправельнимй..
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
03.10.2014, 16:59
Цитата Сообщение от Insane__ Посмотреть сообщение
Но мне кажется, этот алгоритм неправильным
Почему же? Все ряды знакопеременные, удовлетворяют условиям Лейбница, ergo, ошибка меньше первого отброшенного члена.
Т.е. суммируешь ряд до тех пор, пока очередной член > eps.
0
43 / 43 / 15
Регистрация: 10.09.2013
Сообщений: 293
03.10.2014, 17:04  [ТС]
Тогда таким образом можно найти значение первой формулы?
C++
1
2
3
4
5
6
7
8
9
10
double E = 0.000000001;
            double x = 1.0;
            int i = 1;
            double sum = 0.0;
            do{
                
                 sum += (pow(-1, i + 1) * pow(x, 2*i+1)) / (2*i+1);
                 x *= (pow(-1, i + 1) * pow(x, 2 * i + 1)) / (2 * i + 1);
                i++;
            }while(fabs(x) > E);
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
03.10.2014, 17:25
Insane__, я бы сделал немного иначе
C++
1
2
3
4
5
6
7
a = am= x/3
for(i=1; ; i++) {
  sum += a;
  am = am * x * x * (2*i+1) / (2*i + 3);
  if (am < E) break;
  a = (i%2) ? am : -am;
}
И использовать pow для вычисления степени -1 - фи, какой моветон...

Добавлено через 1 минуту
Insane__, в вашем коде есть логические ошибки.
0
43 / 43 / 15
Регистрация: 10.09.2013
Сообщений: 293
03.10.2014, 17:32  [ТС]
Байт, a = am= x/3 - а это зачем?
И какое первоначальное значение x?
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
03.10.2014, 17:39
Цитата Сообщение от Insane__ Посмотреть сообщение
a = am= x/3 - а это зачем?
Надо, Федя, надо...
a - значение 1-го члена, am - значение по модулю. В дальнейшим очередной член получается из предыдущего...
0
43 / 43 / 15
Регистрация: 10.09.2013
Сообщений: 293
03.10.2014, 17:57  [ТС]
Байт, другие формулы по такому же алгоритму высчитывать?

am * x * x * (2*i+1) / (2*i + 3) и по моему здесь нужно -1 а не am

a = am= x/3 - и все же: почему именно x/3?
0
Модератор
Эксперт С++
 Аватар для zss
13766 / 10960 / 6490
Регистрация: 18.12.2011
Сообщений: 29,234
03.10.2014, 18:11
Советую почитать, как правильно
вычислить значение функции разложением в ряд Тейлора
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
04.10.2014, 00:47
Цитата Сообщение от Insane__ Посмотреть сообщение
и все же: почему именно x/3?
Да, я ошибся. При i=1 первый член выглядит так x*x*x/3
но ты бы мог и своими мозгами до этого допереть. А не талдычить, "почему, да почему"

Добавлено через 12 минут
Insane__, Еще раз вынужден извиниться. (-1)2i+1 = -1 для любых i
Следовательно, ряд не является знакопеременным, и Лейбниц ему не указ. Погрешность надо оценивать по другим критериям. На что вам намекнули в посте №10
Но есть большое подозрение,что первый ряд записан неправильно. ИМХО, это не арктангенс.
0
43 / 43 / 15
Регистрация: 10.09.2013
Сообщений: 293
05.10.2014, 00:53  [ТС]
Вот кое что написал, но функции работают некорректно. Можете исправить ошибки?
Почему сумма выходит за границу значений double;
C++
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
        // x > -1 && x  < 1
        double LessOneOverMinusOne(double x, double exp)
        {
            double chlen = 0; double n = 1;
            double xn = x * x * x; double summ = 0;
            do
            {                               
                summ += chlen;
                chlen = xn / ((2 * n) + 1) * pow(x, 2 * n - 1);
                n++; xn *= x * x;
            } while (fabs(chlen) > exp);
            
            return summ + x;
        }
        // x < -1
        double LessMinusOne(double x, double exp)
        {
            double chlen = 0; double n = 1;
            double xn = x * x * x; double summ = 0;
            do
            {
                summ += chlen;
                chlen = xn / (((2 * n) + 1) * pow(x, 2 * n - 1));
                n++; xn *= x * x;
            } while (fabs(chlen) > exp);
 
            return -3.1456/2 + summ + x;
        }
        // x > 1
        double OverOne(double x, double exp)
        {
            double chlen = 0; double n = 1;
            double xn = x * x * x; 
            double summ = 0;
            do
            {
                summ += chlen;
                chlen = xn / (((2 * n) - 1) * pow(x, 2*n-1));
                n++; 
                xn *= x * x;
                
            } while (fabs(chlen) > exp);
            
            return 3.1456/2 +  summ + x;
        }
Добавлено через 9 часов 13 минут
Up.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.10.2014, 00:53
Помогаю со студенческими работами здесь

Рассчитать сумму членов бесконечного ряда с заданной точностью
Рассчитать сумму членов бесконечного ряда с заданной точностью Е для заданного пользователем значения хє(-1;1):...

Рассчитать сумму членов бесконечного ряда с заданной пользователем точностью
Рассчитать сумму членов бесконечного ряда с заданной пользователем точностью е для заданного пользователем значения хє(-1;1): 1 + x^2/2!...

Найти сумму ряда с заданной точностью, если дан общий член ряда
Найти сумму ряда с точностью Е=-4 (0.0001) общий член которого n=n*-n2 (n kvadrat)... Надо написать программу, т.е текст..на языке Си...

Вычисление бесконечного ряда с заданной точностью
Доброй ночи. Сейчас столкнулся с неприятной ситуацией, в задаче, которая казалось бы полностью понятна (но это не точно). ...

Сумма бесконечного ряда с заданной точностью
Написать программу вычисления суммы бесконечного ряда с точностью eps=0.001: S(x)=\sum_{k=2}^{\infty}(-1)^{k-1}\cdot...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru