Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.59/29: Рейтинг темы: голосов - 29, средняя оценка - 4.59
Kuanish
0 / 0 / 0
Регистрация: 16.07.2012
Сообщений: 24
1

расчет значения e^x(x это степень)

05.08.2012, 21:51. Просмотров 5756. Ответов 3
Метки нет (Все метки)

есть задача,в котором нужно рассчитать значение e^x. Проблема в том что я даже понятие не имею что это такое это экспоненто в степени 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
// программа для высчитывания мат. константы - е
#include <iostream>
#include <locale.h>
 
using namespace std;
 
int main()
{   
    setlocale(LC_ALL, "RUS");
 
    int n = 1, f;
    float e = 1;
 
    while (n != 10)
    {
        
        float summa = 0;
 
        f = n;
 
        for (int a = 1; a < n; a++)
            f *= (n - a);
 
        summa = (float)1/f;
        e += summa;
        cout << e << endl;
        n++;
    }
 
    cout << "значение мат. константы е = " << e <<endl;
    
    system("pause");
    
    return 0;
}
Просьба: помогите, пожалуйста, написать программу которая высчитывает значение экспоненты в степени х. ОГРОМНАЯ просьба: "исправьте", пожалуйста, мою программу, без огромных изменений, а то боюсь что не пойму другую совсем новую программу )
p.s. во вложений сама программа.
0
Миниатюры
расчет значения e^x(x это степень)  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.08.2012, 21:51
Ответы с готовыми решениями:

Расчет значения многочленов и их степень
Уважаемые эксперты, подскажите пожалуйсто, как по ряду Тейлора :...

Расчет значения экспоненты
Есть задача, где требуется вычислить мат. константу е, по формуле е = 1 + 1/0!...

Расчет значения функции по введенному значению и графику
Нужна помощь с программой по данному графику.Нужно написать программу для...

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

Вычислить 10-ю степень двойки сложением, умножением и просто возведением в степень.
Написать код на С++ или С# или на Java Вычислить 10-ю степень двойки 1 -...

3
Catstail
Модератор
23618 / 11718 / 2047
Регистрация: 12.02.2012
Сообщений: 19,115
05.08.2012, 22:10 2
Твоя программа "не лечится"... Давай разберемся: ex - это сумма бесконечного ряда вот такого вида: 1+x+x2/2+x3/(2*3)+x4/(2*3*4)+...

n-й член этой бесконечной суммы это xn/(n!) n!=1*2*3*...*n - произведение чисел от 1 до n.

Что значит "сумма бесконечного ряда"? Абсолютно точно ее вычислить нельзя (т.к. нужно будет бесконечное время). Но если ряд сходится, то можно остановить суммирование, когда очередной член ряда не станет меньше наперед заданного числа. Это и будет результатом.

Теперь о том, как считать. Обрати внимание,что если разделить (n+1)-й член ряда на n-й, то получится
x/(n+1). Теперь правильный программный код:

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
#include "iostream.h"
#include "math.h"
 
double exp_(double x,double eps) // расчет e^x с точностью eps
{
    double s=1;  // сумма ряда
    double n=1; // нач. n
    double a=1; // первый член ряда
    while (1)     // беск. цикл
    {
        a=a*x/n;  // вычисляем следующий член ряда
        if (fabs(a) <= eps) break; // если точность достигнута - выход
        s=s+a;     // прибавим к сумме очередной член
        n++;        // увеличим n
    }
    return s; // когда вышли из цикла - вернем результат
}
 
int main(int argc, char* argv[])
{
    double x;
        cout.precision(13); // точность при печати
    cout << "Enter x "; // просим ввести x
    cin >> x;              // вводим
    cout << "exp(" << x << ")=" << exp_(x,1e-14) << endl; // вычисляем и печатаем
    return 0;
}
1
-=ЮрА=-
Заблокирован
Автор FAQ
05.08.2012, 22:12 3
Итератор
http://www.cyberforum.ru/cgi-bin/latex.cgi?{a}_{n} = \frac{{x}^{n}}{n!}
http://www.cyberforum.ru/cgi-bin/latex.cgi?{a}_{n + 1} = \frac{{x}^{n + 1}}{(n + 1)!}
http://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{{a}_{n + 1}}{{a}_{n}} =\frac{ \frac{{x}^{n + 1}}{(n + 1)!}}{ \frac{{x}^{n}}{n!}} = \frac{x}{n + 1}
Сам код
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
#include <cmath>   //Будем испоользовать для проверки наших подсчётов
#include <iomanip>
#include <iostream>
using namespace std;
 
double Texp(double x, double eps)
{
    double sum = 1;
    double an  = x;
    for(double n = 1; eps < fabs(an); n = n + 1)
    {
        sum += an;
        an  *= x/(n + 1);
    }
    return sum;
}
 
int main()
{
    double xn, xk, dx;//Пределы и шаг аргумента
    double eps;//Погрешность вычислений
    cout<<"xn = ";cin>>xn;
    cout<<"xk = ";cin>>xk;
    cout<<"dx = ";cin>>dx;
    cout<<"eps= ";cin>>eps;
    cout<<"   x\t| Texp(x)\t| cmath\n";
    for(double x = xn; x <= xk; x = x + dx)
        cout<<x<<"\t| "
            <<setprecision(6)<<Texp(x, eps)<<"\t| "
            <<setprecision(6)<<exp(x)<<endl;
    return 0;
}
1
Миниатюры
расчет значения e^x(x это степень)  
-=ЮрА=-
Заблокирован
Автор FAQ
05.08.2012, 22:14 4
Kuanish, чтобы было понятно о чём речь почитай этот раздел
http://www.cyberforum.ru/faq/thread436065.html#post2452211
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.08.2012, 22:14

Расчет значения заданной функции двумя способами: через аналитическую формулу f(x) и разложением в ряд
Напишите программу для расчета значения заданной функции двумя способами: через...

Написать программу с функцией, вычисляющей целую степень дробного числа. Учесть,что степень может быть положительной, отрицательной, нулевой
Написать программу с функцией, вычисляющей целую степень дробного числа....

Почему выводит адреса, а не значения? Это часть программы
Лабораторная работа, должны выводиться значения массива, но выводятся адреса


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru