Скачать MetaTrader 5

Числа с плавающей точкой вида 1.2345678e+10

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Forex Trader
114283
Forex Trader  
Можно ли в MetaEditor'е описывать числа с плавающей точкой в виде 1.2345678e+10? Что-то в хелпе на этот счет ничего не нашел, кроме:

Внутреннее представление - число двойной точности размером 8 байт. Пределы изменения от -1.7 * e-308 до 1.7 * e308. Точность обеспечивается не более, чем 15 значащими цифрами.
Forex Trader
114283
Forex Trader  
А что по Вашему означает запись 1.2345678e+10 и что 1.7* e308, мне почему то казалось что это одно и тоже. и в хелпе по-моему еще коечто есть

Константы с плавающей точкой (double)

Константы с плавающей точкой состоят из целой части, точки (.) и дробной части. Целая и дробная части представляют собой последовательности десятичных цифр.

Внутреннее представление - число двойной точности размером 8 байт. Пределы изменения от -1.7 * e-308 до 1.7 * e308. Точность обеспечивается не более, чем 15 значащими цифрами.

Forex Trader
114283
Forex Trader  
К сожалению, нынешний компилятор не воспринимает научную запись чисел с плавающей точкой.
Поэтому в MetaEditor нельзя описывать числа в виде 1.2345678e+10
Forex Trader
114283
Forex Trader  
Похоже я не понял вопроса. Но если проблемма в использовании нескольких констант которые имеют либо очень большое либо очень маленькое значение, можно попробовать так


double d123e17;

int init()
{
 d123e17=1.23*MathPow(10,17);
return(0);
}

int start()
{
for(int i=0;i<10;i++) double A=i*d123e17;// к примеру
Print(d123e17);
return(0);
}

Forex Trader
114283
Forex Trader  
Спасибо, Jhonny! Именно это и было нужно.
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий