Мы ничего никуда не округляем (до 0.1 или до 0.4). Почитайте документацию.
Это Print выводит вещественные числа с точностью до 4-го знака.
Хотите увидеть (именно увидеть) точность до 8-го знака используйте
функцию DoubleToStr.
В хелпе по функции Print явно сказано "Данные типа double выводятся с 4 десятичными цифрами
после точки. Чтобы получить большую точность, следует использовать
функцию DoubleToStr()."
Опять за рыбу деньги. С самого начала о чём разговор был? О входных
параметрах. В Вашем случае на входе не ровно 0.8, а 0.80000000000000004
(4 в 17-м знаке после запятой, дебагер от вижуал студио мне показал)
Добро пожаловать в мир вещественных чисел.
Если Вам это не нравится (явно не нравится) переводите все Ваши
вычисления на целочисленную основу.
Все это только означает, что хелп по этой функции надо явно сделать лучше, чтобы предупредить о подводных камнях.
Попробовал справиться вот так:
Не вышло, как видим...Мы ничего никуда не округляем (до 0.1 или до 0.4). Почитайте документацию. Это Print выводит вещественные числа с точностью до 4-го знака. Хотите увидеть (именно увидеть) точность до 8-го знака используйте функцию DoubleToStr.
Слава, вот так правильно будет?
Слава, вот так правильно будет?
Да
Слава, вот так правильно будет?
Да
Благодарю...
Print(DoubleToStr(MathMod(4, 0.8), 8)); пишет 2007.10.05 14:17:56 Test EURGBP,H1: 0.80000000
Ну и что?
Возвращается 0.40000000. Не решает это проблему.Возвращает 0.3999999999999998
Вот исходник для DoubleToStrMorePrecision
Благодарю...
Print(DoubleToStr(MathMod(4, 0.8), 8)); пишет 2007.10.05 14:17:56 Test EURGBP,H1: 0.80000000
А у Вас возвращает 0.7999999999999998. Если воспользоваться функцией DoubleToStrMorePrecision
Благодарю...
Print(DoubleToStr(MathMod(4, 0.8), 8)); пишет 2007.10.05 14:17:56 Test EURGBP,H1: 0.80000000
А у Вас возвращает 0.7999999999999998. Если воспользоваться функцией DoubleToStrMorePrecision
Опять за рыбу деньги. С самого начала о чём разговор был? О входных параметрах. В Вашем случае на входе не ровно 0.8, а 0.80000000000000004 (4 в 17-м знаке после запятой, дебагер от вижуал студио мне показал)
Добро пожаловать в мир вещественных чисел.
Если Вам это не нравится (явно не нравится) переводите все Ваши вычисления на целочисленную основу.