С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Составить программу вычисления заданной математической функции путем разложения ее в ряд - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Что происходит при удалении/добавлении элемента в контейнер vector? http://www.cyberforum.ru/cpp-beginners/thread865131.html
Объясните пожалуйста, какие этапы проходят при добавлении и удалении элемента из контейнера
C++ Из двух стеков равной длины создать один стек, не удаляя исходные стеки 1.Из двух стеков равной длины создать один стек, не удаляя исходные стеки (создавать копии элементов). При создании нового стека элементы брать по-очереди, по одному элементу из каждого стека.... http://www.cyberforum.ru/cpp-beginners/thread865130.html
Удаление элемента из дерева C++
Написал 2 функции для удаления элемента из дерева. Брал алгоритм из вирта, но почему-то не работает. Может не правильно с паскаля на си переписал. Помогите пожалуйста //ищем самую правую вершину...
C++ Определить, пуст ли данный элемент массива
Есть массив обьектов некоторого класса(GOODS goods). Хочу написать ф-цию которая покажет пользователю, какие позиции массива пусты, чтоб потом можно было туда чтото записать. Сообственно надо ето...
C++ Функция в строке должна вычислять количество слов (слова разделяются пробелом) http://www.cyberforum.ru/cpp-beginners/thread865113.html
int sum (const char *pS ) { const char *p (pS); int n (0); while ( *p ) { if ( isspace (*p)) ++n; p++; } return n+1;
C++ Вызов функции, которая возвращает 2 параметра Видимо я что-то принципиально не понимаю, что же тут не так #include <iostream> #include <string> #include <iostream> #include <string> #include <math.h> #include <time.h> #include... подробнее

Показать сообщение отдельно
Конфиг
0 / 0 / 0
Регистрация: 11.05.2013
Сообщений: 2

Составить программу вычисления заданной математической функции путем разложения ее в ряд - C++

14.05.2013, 20:32. Просмотров 450. Ответов 0
Метки (Все метки)

Помогите плс ребят
разложение функции в ряд с заданной точностью
Составить программу вычисления заданной математической функции путем разложения ее в ряд. Программа должна применять рекурсивную функцию для вычисления суммы ряда с заданной точностью E. Для оценки правильности вычисления суммы ряда в программе следует так же предусмотреть вычисление формулы по данной матем формуле( полученное значение суммы ряда и значение , вычисленное по контрольной формуле , не должны различаться более чем на величину заданной точности E)
Ряд
2*x^2+1/2^2 - 3*x^3+1/3^2 + 4*x^4+1/4^2 - ...... +- (i+1)x^i+1/(i+1)^2 +-


Контрольная формула
x+1-Pi^2/12-ln(1+x)



И вот сама задача:
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
#include <cmath>
#include <conio.h>
#include <cstdio>
 
const double Pi=3.14;
double WWW(double x, int i, double e)
{
    double b;
    b=(pow(-1.,i+1)*(i+1)*pow(x,i+1)+1)/pow(i+1,2.0)/2;
    if (fabs(b)>e)
        return b+WWW(x,i+1,e);
    else return 0;
}
int main()
{
    double x, eps;
    double res, res1;
    printf ("Vvedite x (|x|=<1) = \n");
    scanf ("%lf", &x);
    if (fabs(x)>=1)
    {
        printf ("Oshibka!!! |x| dolzhen bit menshe 1 \n Zapustite programmu zanovo... ");
        return -1;
 
    }
 
    printf ("\nZadaite tochnost' eps=\n");
    scanf ("%lf",&eps);
    if (eps<=0)
    {
        printf ("Oshibka!!! Eps dolzhen bit' bol'she 0... \n Zapustite programmu zanovo... ");
        return -1;
    }
    res=(x+1-pow(Pi,2)/12)-log(1+x);
    printf ("Rezultat glavnoi funkcii %0.16lf\n",res);
 
    res1=WWW(x,1,eps);
    printf ("Rezultat ryada           %0.16lf",res1);
    getch ();
 
}
Не пойму где ошибка :/ что то точность расходится чуть больше чем надо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.