Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.66/41: Рейтинг темы: голосов - 41, средняя оценка - 4.66
0 / 0 / 0
Регистрация: 07.10.2008
Сообщений: 8

Вычисление суммы ряда с заданной погрешностью

23.10.2008, 17:11. Показов 8100. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
народ помогите решить задачку:
arctanx=x-x^3/3+x^5/5-...+(-1^n)*(x^(2n+1)/(2n+1))...

Численно убедиться в справедливости равенства, для чего для
заданного значения х вычислить его левую часть и разложение,
стоящее в правой части. При каком n исследуемое выражение
отличается от arctan x менее, чем на заданную погрешность ε?
Испытать разложение на сходимость при разных значениях х.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.10.2008, 17:11
Ответы с готовыми решениями:

Определить число членов ряда, необходимых для расчета с заданной погрешностью суммы членов ряда
определить число членов ряда, необходимых для расчета с заданной погрешностью суммы членов ряда: 1-1/3+1/5-1/7+…..: (-1)^N/(2*N+1);...

Вычисление суммы ряда с заданной точностью
Даны действительные x,e (x != 0,1 > e > 0) и целые k,a,n числа. Вычислить с точностью e сумму и указать количество учтенных слагаемых....

Вычисление суммы ряда с заданной точностью
Даны числовой ряд и некоторое число е. (e<0.01)Найти сумму тех членов ряда, модуль которых больше или равен заданному e. Общий член ряда...

13
Эксперт С++
 Аватар для XuTPbIu_MuHTAu
2256 / 771 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
23.10.2008, 17:57
Задача решается с помощью цикла. Задается погрешность эпсилон, после чего запускается цикл while ( abs( Si - S(i-1)) > eps ), на каждом шаге которого вычисляется следующая частичная сумма ряда.(Si, S(i-1 ) - обозначения для частичных сумм).
В общем,ответ в использовании цикла while.
0
0 / 0 / 0
Регистрация: 07.10.2008
Сообщений: 8
24.10.2008, 01:04  [ТС]
млин, напишите плз код с рекурсией, очень надо...горю...
0
 Аватар для ABTOP
36 / 36 / 4
Регистрация: 09.06.2008
Сообщений: 324
24.10.2008, 18:02
Цитата Сообщение от Nekit_by Посмотреть сообщение
млин, напишите плз код с рекурсией, очень надо...горю...
любой пример с рекурсией?
1
сцуко киборг
 Аватар для Жестянка
103 / 30 / 4
Регистрация: 11.09.2008
Сообщений: 193
24.10.2008, 20:22
на сколько я знаю в С++ нет возведения в степень... Вы функции ещё не проходили?

Добавлено через 18 минут 48 секунд
вот рекурсия:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
...
double Eps;
cout<<"Input Eps:";
cin>>Eps;
double ArcTan=0, S=1; int n=0;
while(abs(S-S_pred)>Eps)
      {
      n++;
      S_pred=S;
      S=(-1^n)*(x^(2n+1)/(2n+1));
      ArcTan+=S
      }
...
Добавлено через 1 минуту 40 секунд
... и abs, кстати тоже нет, по крайней мере без подключения дополнительных библиотек.

Добавлено через 1 минуту 43 секунды
поэтому "^" и "abs" придется написать ручками... или чевонить подключить...
0
 Аватар для ABTOP
36 / 36 / 4
Регистрация: 09.06.2008
Сообщений: 324
24.10.2008, 21:29
Цитата Сообщение от Жестянка Посмотреть сообщение
на сколько я знаю в С++ нет возведения в степень... Вы функции ещё не проходили?
в math.h есть
функция pow(число, степень);
и тоже самое для abs(число);
0
сцуко киборг
 Аватар для Жестянка
103 / 30 / 4
Регистрация: 11.09.2008
Сообщений: 193
24.10.2008, 22:03
в math.h есть
о! точно! А я никак вспомнить не могла. Помню, что чево-то очевидное, а что именно - не помню.
Спасибо.
0
Флудер
 Аватар для Ensase
195 / 33 / 11
Регистрация: 23.03.2007
Сообщений: 334
26.10.2008, 23:04
2Жестянка, никакая там у вас не рекурсия - это итерация
0
сцуко киборг
 Аватар для Жестянка
103 / 30 / 4
Регистрация: 11.09.2008
Сообщений: 193
26.10.2008, 23:39
Ensase,
C++
1
2
3
4
5
6
7
8
9
10
11
...
double Eps;
cout<<"Input Eps:";
cin>>Eps;
double S=1; int n=0;
while(abs(atan(x)-S)>Eps)
      {
      n++;
      S+=pow(-1,n)*(pow(x,(2n+1))/(2n+1));
      }
...
а так рекурсия?
0
10 / 10 / 2
Регистрация: 18.08.2008
Сообщений: 127
26.10.2008, 23:54
это тоже не рекурсия
http://ru.wikipedia.org/wiki/%... 0%B8%D1%8F
и честно я не знаю как ее применить здесь
0
сцуко киборг
 Аватар для Жестянка
103 / 30 / 4
Регистрация: 11.09.2008
Сообщений: 193
27.10.2008, 00:35
А никакую другую "рекурсию" для данной задачки не применишь.
0
0 / 0 / 0
Регистрация: 07.10.2008
Сообщений: 8
03.11.2008, 23:48  [ТС]
Народ, напишите плз код полностью, оч надо...
0
Sergey J.A.
13.11.2008, 12:29
Если точно рекурсия, то будет что-то вроде этого.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
double arctanx_(double x, double eps, int n, double f_prev, double chislit)
{
    double cur_item = chislit / (2*n + 1);
    double f = f_prev + cur_item;
 
    if(n > 0 && fabs(f - f_prev) < eps)
        return f;
 
    return arctanx_(x, eps, n + 1, f, chislit * (-1) * x * x);
}
 
double arctanx(double x, double eps)
{
    return arctanx_(x, eps, 0, 0, x);
}
Небольшие пояснения...
2 ф-ии. arctanx - основная, её нужно вызывать.
arctanx_ вспомогательная.

Возводить в степень не надо. Нужно на каждой итерации домножать числитель на -x^2
0 / 0 / 0
Регистрация: 07.10.2008
Сообщений: 8
25.11.2008, 23:48  [ТС]
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#include<stdio.h>
#include<conio.h>
#include<math.h>
 
float ArcTang(float x1, int n1);
float ArcTangRek(float xn, int n1, int n2);
int GetN(float x1, float eps);
 
int main(void)
{
const int N = 100;
float x, y, eps;
int n, menu;
while (1)
{
clrscr();
puts("Choose the action: \n1. Input x and calculate y=arctg(x) on a recurrent parity\n (Iteratonal functon)\n2. Input x and calculate y=arctg(x) on a recurrent parity\n (Recurrent functon)\n3. Input x, e and find out, how many iterations are necessary to execute,\n that the parity was carried out: IY(n)-Y(n+1)I<e\n4. Exit programm");
scanf("%d",&menu);
switch (menu)
{
case 1:
{
puts("Enter x.");
scanf("%f", &x);
y = ArcTang(x, N);
printf("Result:\ny=%f", y);
getch();
break;
}
case 2:
{
puts("Enter x.");
scanf("%f %f", &x);
y = ArcTangRek(x, 0, N);
printf("Result:\ny=%f", y);
getch();
break;
}
case 3:
{
puts("Enter x, e through the gap.");
scanf("%f %f", &x, &eps);
n = GetN(x, eps);
printf("Result:\nn=%f", n);
getch();
break;
}
case 4:
{
puts("Thanks for using my programm!");
getch();
return 1;
}
default:
{
puts("Incorrect input!");
getch();
break;
}
}
}
}
 
float ArcTang(float x1, int n1)
{
int i = 0;
float s = 0, xn = x1;
while (i < n1)
{
s += xn;
xn *= xn*xn*(-1)/(2*i+3);
i++;
}
}
 
float ArcTangRek(float xn, int n1, int n2)
{
if (n1 == n2)
{
return xn;
}
else
{
return xn+ArcTangRek(xn, n1+1, n2);
xn *= xn*xn*(-1)/(2*n1+3);
}
}
 
 
int GetN(float x1, float eps1)
{
float y1, y2;
int n1 = 0;
y1 = ArcTang(x1, 0);
y2 = ArcTang(x1, 1);
while (fabs(y1-y2)>eps1)
{
y1 = y2;
n1++;
y2 = ArcTang(x1, n1+1);
}
return n1;
}
Народ, помогите доделать лабу, не работают первый и третий пункты...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.11.2008, 23:48
Помогаю со студенческими работами здесь

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

Вычисление суммы ряда с заданной точностью
Помогите сделать программу , желательно объясните вообще что сделать нужно. Писать на почту Обсуждение вопросов -- на форуме,но можно и в...

Вычисление суммы ряда с заданной точностью
Заданы x(abs(x)&lt;1) и точность вычислений eps. Вычислить сумму: s=x-x^2/2+X^2/3-...+(-1)^(n-1) *x^n/n+... Проверка y=ln(1+x).

Вычисление суммы ряда с заданной точностью
Используя, оператор цикла do написать программу определения суммы членов ряда с точностью з=10^3, общий член которого an задан формулой: ...

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


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru