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

функция exp

29.04.2013, 10:44. Показов 10953. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Чем можно заменить функцию exp???у меня степень типа double и вылетает ошибка типо "floatinf point overflow".
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.04.2013, 10:44
Ответы с готовыми решениями:

Проверьте пожалуйста правильный ли следующий код: вычисление exp(x) и exp(-x)
Всем доброго время суток! Проверьте пожалуйста правильный ли следующий код exp(x): #include <cmath> #include...

Процедура и функция: Описать функцию Exp l(x,ε) вещественного типа
Описать функцию Exp l(x,ε) вещественного типа (параметры x,ε- вещественные,ε>0), находящую приближённое значение функции exp(x): ...

Ошибка (активно) E0304 отсутствуют экземпляры перегруженная функция "exp"
Помогите пожалуйста исправить ошибку Ошибка (активно) E0304 отсутствуют экземпляры перегруженная функция "exp" и ошибку ...

15
20 / 20 / 8
Регистрация: 14.11.2010
Сообщений: 52
29.04.2013, 11:00
Продемонстрируйте код.
Как вариант можно заменить на
C++
1
2
3
4
#include <math.h>
 
double x,y;
y=pow(M_E,x);
0
0 / 0 / 0
Регистрация: 24.04.2013
Сообщений: 47
29.04.2013, 11:03  [ТС]
Цитата Сообщение от naymkazp Посмотреть сообщение
Продемонстрируйте код.
Как вариант можно заменить на
C++
1
2
3
4
#include <math.h>
 
double x,y;
y=pow(M_E,x);
да что показывать число типо double является степенью. число е возводим в эту степень. с функцией pow такая же ошибка
0
20 / 20 / 8
Регистрация: 14.11.2010
Сообщений: 52
29.04.2013, 11:16
Вот полный код для проверки работоспособности функции с разными числами:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include "stdafx.h"
#include <math.h>
#include <iostream>
 
int _tmain(int argc, _TCHAR* argv[])
{
double x,y;
 
for(;;){
    std::cin>>x;
    y=exp(x);
    std::cout<<y<<std::endl;
}
return 0;
}
0
0 / 0 / 0
Регистрация: 24.04.2013
Сообщений: 47
29.04.2013, 11:36  [ТС]
Цитата Сообщение от naymkazp Посмотреть сообщение
Вот полный код для проверки работоспособности функции с разными числами:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include "stdafx.h"
#include <math.h>
#include <iostream>
 
int _tmain(int argc, _TCHAR* argv[])
{
double x,y;
 
for(;;){
    std::cin>>x;
    y=exp(x);
    std::cout<<y<<std::endl;
}
return 0;
}
такое и у меня работает, а когда степень типа 0.000000011 вылетает
0
20 / 20 / 8
Регистрация: 14.11.2010
Сообщений: 52
29.04.2013, 11:38
Цитата Сообщение от Мишутка1 Посмотреть сообщение
такое и у меня работает, а когда степень типа 0.000000011 вылетает
0.000000011 это уже не тип double. попробуйте long double
0
0 / 0 / 0
Регистрация: 24.04.2013
Сообщений: 47
29.04.2013, 11:40  [ТС]
Цитата Сообщение от naymkazp Посмотреть сообщение
0.000000011 это уже не тип double. попробуйте long double
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
long double sum = 0;
long double ag2 = 0;
for (int i_n = 0; i_n < 512; i_n++)
{
sum = 0.0;
for (int j_k = 0; j_k < 512; j_k++)
{
 
    if ((i_n == 0)||(j_k == 0)) {
    ag2 = (2 * pi * j_k * i_n)/512.0;
    sum += (Ak[j_k] * 1);
    }
    else
    {
       ag2 = (2 * pi * j_k * i_n)/512.0;
       sum += Ak[j_k] * exp(ag2);//pow(M_E,ag2)
    }
}
//Ak1[i_n] = sum/512;
}
0
20 / 20 / 8
Регистрация: 14.11.2010
Сообщений: 52
29.04.2013, 11:55
массив Ak[j_k] чемто заполняеться заранее?
ибо уже на 90 проходе цикла по i_n получаеться сумма в минус бесконечность.
но ошибки нет

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
// 1.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <math.h>
#include <iostream>
 
int _tmain(int argc, _TCHAR* argv[])
{
long double sum = 0.0;
long double ag2 = 0.;
double pi=3.14;
double Ak[512];
 
 for (int i_n = 0; i_n < 512; i_n++)
 {
     sum = 0.0;
    for (int j_k = 0; j_k < 512; j_k++)
    {
 
    if ((i_n == 0)||(j_k == 0)) {
        ag2 = (2 * pi * j_k * i_n)/512.0;
        sum += (Ak[j_k] * 1.0);
    }
     else
    {
        ag2 = (2.0 * pi * j_k * i_n)/512.0;
        sum += Ak[j_k] * exp(ag2);//pow(M_E,ag2)
        
    }
    }
 //Ak1[i_n] = sum/512;
    std::cout<<i_n<<"  "<<sum<<std::endl;
 }
 
system("pause");
return 0;
}
0
0 / 0 / 0
Регистрация: 24.04.2013
Сообщений: 47
29.04.2013, 12:00  [ТС]
Цитата Сообщение от naymkazp Посмотреть сообщение
массив Ak[j_k] чемто заполняеться заранее?
ибо уже на 90 проходе цикла по i_n получаеться сумма в минус бесконечность.
но ошибки нет

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
// 1.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <math.h>
#include <iostream>
 
int _tmain(int argc, _TCHAR* argv[])
{
long double sum = 0.0;
long double ag2 = 0.;
double pi=3.14;
double Ak[512];
 
 for (int i_n = 0; i_n < 512; i_n++)
 {
     sum = 0.0;
    for (int j_k = 0; j_k < 512; j_k++)
    {
 
    if ((i_n == 0)||(j_k == 0)) {
        ag2 = (2 * pi * j_k * i_n)/512.0;
        sum += (Ak[j_k] * 1.0);
    }
     else
    {
        ag2 = (2.0 * pi * j_k * i_n)/512.0;
        sum += Ak[j_k] * exp(ag2);//pow(M_E,ag2)
        
    }
    }
 //Ak1[i_n] = sum/512;
    std::cout<<i_n<<"  "<<sum<<std::endl;
 }
 
system("pause");
return 0;
}
да он конечно заполнен числами double
0
0 / 0 / 0
Регистрация: 24.04.2013
Сообщений: 47
29.04.2013, 12:04  [ТС]
Цитата Сообщение от Мишутка1 Посмотреть сообщение
да он конечно заполнен числами double
вот формула, которая этими циклами реализуется
Миниатюры
функция exp  
0
20 / 20 / 8
Регистрация: 14.11.2010
Сообщений: 52
29.04.2013, 13:04
1. что такое i в формуле в степени экспоненты?
2.в самой сумме степень экспоненты может достигать 3215 а это стандартными средствами не посчитать.
3. лучше полное задание выдайте.
0
0 / 0 / 0
Регистрация: 24.04.2013
Сообщений: 47
29.04.2013, 13:16  [ТС]
Цитата Сообщение от naymkazp Посмотреть сообщение
в самой сумме степень экспоненты может достигать 3215 а это стандартными средствами не посчитать.
это как понимать?

Добавлено через 4 минуты
Цитата Сообщение от naymkazp Посмотреть сообщение
лучше полное задание выдайте.
это формула обратного ДПФ, там вот нужна экспонента
0
20 / 20 / 8
Регистрация: 14.11.2010
Сообщений: 52
29.04.2013, 13:17
Цитата Сообщение от Мишутка1 Посмотреть сообщение
это как понимать?
2*pi*k*n/N=2*3.14*511*512/512=3209.08
это степень экспоненты для 511 элемента суммы для 512 элемента x_n.
а это уже длинная арифметика и высчитывается по своим законам.
1
0 / 0 / 0
Регистрация: 24.04.2013
Сообщений: 47
29.04.2013, 13:19  [ТС]
Цитата Сообщение от naymkazp Посмотреть сообщение
2*pi*k*n/N=2*3.14*511*512/512=3209.08
это степень экспоненты для 511 элемента суммы для 512 элемента x_n.
а это уже длинная арифметика и высчитывается по своим законам.
дак вы же сказали, что до 3215 нормально считает?? выше сообщение
0
20 / 20 / 8
Регистрация: 14.11.2010
Сообщений: 52
29.04.2013, 13:24
Цитата Сообщение от Мишутка1 Посмотреть сообщение
дак вы же сказали, что до 3215 нормально считает?? выше сообщение
я не сказал что нормально считает)
512 элементов это обязательно условие?
для 241 элементов еще посчитает,выше нет-здесь нужны другие подходы.
0
0 / 0 / 0
Регистрация: 24.04.2013
Сообщений: 47
29.04.2013, 13:27  [ТС]
Цитата Сообщение от naymkazp Посмотреть сообщение
я не сказал что нормально считает)
512 элементов это обязательно условие?
для 241 элементов еще посчитает,выше нет-здесь нужны другие подходы.
извините я ошибся, что вы так сказали=)) да именно 512 ну по заданию, и меня тоже вот эта буква i в формуле смущает, на wiki там не указано, что она значит. http://ru.wikipedia.org/wiki/%... 1%8C%D0%B5
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.04.2013, 13:27
Помогаю со студенческими работами здесь

exp(-40)
Всем доброго времени суток, у меня не получается посчитать exp(-40) с необходимой точностью, я знаю как посчитать exp(-5) ...

exp(x)
При казалось бы не слишком уж больших значениях x, например -1. exp(-1.0) уже возвращает 1. Пробовал заставить вернуть его double вот...

Вычислить: с=2*exp(x)+2/5*y^x
Разработать программу для вычисления математического выражения. с=2*exp(x)+2/5*y^x

exp(x) возвращает 0
Мне необходимо написать функцию которая возвращает значение функции распределения скоростей Максвелла(вероятность того, что молекула...

Вычисление exp(-x)
Всем привет. Я уже долго бьюсь над одной задачей. Вычисление функции exp(-x) с помощью разложения в ряд. Пытался находить через факториал,...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru