https://docs.mql4.com/ru/convert/normalizedouble
Округление числа с плавающей точкой до указанной точности.
В продолжение темы. Есть скрипт
#property strict void OnStart() { double v1 = NormalizeDouble(0.055,2); double v2 = NormalizeDouble(0.0549,2); Print("v1 = ",DoubleToString(v1),", v2 = ",DoubleToString(v2)); }
результат: v1 = 0.06000000, v2 = 0.05000000, а ведь в обоих случаях должно быть 0.06000000.
В продолжение темы. Есть скрипт
результат: v1 = 0.06000000, v2 = 0.05000000, а ведь в обоих случаях должно быть 0.06000000.
Округление — Википедия
Здравствуйте. Подскажите, в чем дело.
Почему функция NormalizeDouble(0.055,2) округляет число "0.055" до "0.06"?
Это же не функция огругления дробей.
В продолжение темы. Есть скрипт
результат: v1 = 0.06000000, v2 = 0.05000000, а ведь в обоих случаях должно быть 0.06000000.
В продолжение темы. Есть скрипт
результат: v1 = 0.06000000, v2 = 0.05000000, а ведь в обоих случаях должно быть 0.06000000.
ну вощьпеееее....
должно быть v1=v2=0.06
Я даже и не проверял никогда... Неужели так косячит?
У Вас МТ5 или МТ4?
ну вощьпеееее....
должно быть v1=v2=0.06
Я даже и не проверял никогда... Неужели так косячит?
С какого перепуга?
Я в школе на двойки учился, но как правильно округлять запомнил ТАМ...
Если самое правое число больше или 5, тогда следующее налево +1. И т.д. сдвигаемся справа налево
Я в школе на двойки учился, но это запомнил...
Интересненько, что за школа такая... Изложите ка ход своих мыслей. А то что-то не имею вообще никаких фантазий, как так может клинить.
В продолжение темы. Есть скрипт
результат: v1 = 0.06000000, v2 = 0.05000000, а ведь в обоих случаях должно быть 0.06000000.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте. Подскажите, в чем дело.
Почему функция NormalizeDouble(0.055,2) округляет число "0.055" до "0.06"?
Это же не функция огругления дробей.