Форум программистов, компьютерный форум CyberForum.ru

Найти с заданной точностью знач. выражения - C++

Восстановить пароль Регистрация
 
qxiton
0 / 0 / 0
Регистрация: 24.05.2009
Сообщений: 19
15.02.2010, 13:43     Найти с заданной точностью знач. выражения #1
Составить функцию возвращающую значение для решения представленной ниже задачи: Найти с заданной точностью значения выражения
s=сумма ряда(x^n/n!);
n от 1 до бесконечн.;
Точность<=10^-4;
|x|<1;

Помогите не понимающему экономисту) оч прошу!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.02.2010, 13:43     Найти с заданной точностью знач. выражения
Посмотрите здесь:

Найти сумму ряда с заданной точностью C++
C++ Найти сумму ряда с заданной точностью
C++ Найти сумму ряда с заданной точностью
Найти сумму ряда с заданной точностью c C++
Найти сумму ряда с заданной точностью = 10 C++
C++ Найти сумму ряда с заданной точностью
Найти сумму ряда с заданной точностью C++
C++ Найти корень уравнения с заданной точностью

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nameless One
Эксперт С++
 Аватар для Nameless One
5753 / 3402 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
15.02.2010, 16:57     Найти с заданной точностью знач. выражения #2
Чтобы каждый раз не высчитывать n! и x^n заново, установим соответствие между (n+1)-ым и n-ным членами ряда: a(n+1)=a(n)*(x/(n+1)), a(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
#include <iostream>
using namespace std;
 
//Макрос для нахождения модуля
#define abs(a) ((a<0)?(-a):(a))
 
int main()
{
    setlocale(LC_ALL, "Russian");
    double acc=0.0001;
    double x;
    double a, s=0;
    int n=1;
    do
    {
        cout << "Введите x, |x|<1..." << endl;
        cin >> x;
    }
    while(abs(x)>=1);
    a=x;
    while(abs(a)>=acc)
    {
        s+=a;
        a*=x/(n+1);
        ++n;
    }
 
    cout << "Сумма равна " << s << endl;
    system("pause");
    return 0;
}
Добавлено через 45 минут
Макрос для нахождения модуля я написал немножко неправильно. В данном примере работать будет, но при других аргументах возможны ошибки. Так что правильно будет так:
C++
1
#define abs(a) ((a)<0)?(-(a)):(a)
qxiton
0 / 0 / 0
Регистрация: 24.05.2009
Сообщений: 19
16.02.2010, 14:25  [ТС]     Найти с заданной точностью знач. выражения #3
Еще не особо разбирался в коде, но большое спасибо!
Yandex
Объявления
16.02.2010, 14:25     Найти с заданной точностью знач. выражения
Ответ Создать тему
Опции темы

Текущее время: 19:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru