Цельсия. Один показывает 1e-50, другой 3e-50. Они показывают одинаковые значения или один из них ошибается относительно температуры на улице?
Если мы измеряем именно на уровне 1е-50 то конечно неравны
То есть если epsilon в сравнении выше 1e-50, то числа не равны
Константин, я не говорю, что это неверно для исходного вопроса, но я отвечал именно на общее утверждение, где сказано, что числа с плавающей точкой (все) нужно сравнивать именно так
И вы пока не привели никакого примера, когда это не так.
Нет, я говорю, что метод сравнения неверен в общем случае
бодрого утра. ты случайно не помнишь, как порядок произведения двух даблов влияет на точность? что-то на подобии, что для большей точности первым должен быть меньший дабл
Потому что, например, если я сравниваю два очень маленьких числа, то этот метод даст всегда равенство, что неверно
Но мы с вами выяснили, что оно не даст равенство, если eps = 1e-50
Ок, вы имеете ввиду, что все дело в выборе epsilon, но тогда вопрос, как выбрать epsilon
Я хочу сказать, что если eps для этого расчёта невозможно выбрать, то double не позволяет решить задачу этим расчётом
Обсуждают сегодня