смотря куда выводить результат. А так это одно и то же.
5е-05 - имеется ввиду что 5*10 в минус 5 степени. то есть 5 нулей после запятой.if(5!=0) - всегда true, зачем оно вам??
DoubleToStr(restantemaximum,_Digits);
возможно приведение типов работает, если Вам нужно получить вещественное число, то и объявляйте везде вещественные числа, попробуйте так:
if(5.0!=0.0) { double restantemaximum=NormalizeDouble(5.0*Point,Digits); потом так: double restantemaximum=NormalizeDouble(5.0/100000.0,Digits); }хотя результат 5е-05 это корректное значение
Yevheniy Kopanitskyy:
Написал функцию в которую кладуцелое число и нужно получить цену
double restantemaximum=NormalizeDouble(5/100000,Digits);
Вы делите целое число 5 на целое 100 000. Это деление int на int. В результате всегда получается целое число. В данном случае, 0. Попробуйте (5.0 / 100000) или ( (double) 5 / 100000 ). В этом случае Вы дробное число будете делить на целое и получите дробное (double).
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Написал функцию в которую кладуцелое число и нужно получить цену
Помогите решить задачку