Сравнение вычисленных чисел с плавающей точкой на равенство почти всегда плохая идея, поскольку (как уже говорили другие) они являются приблизительными значениями, и появляются ошибки.
Вместо проверки на a == b, проверьте на равенствос точностью до порогового значения, которое имеет смысл для вашего приложения, как в случае Math.abs (ab) <.00001.Это хорошая практика для любого языка программирования, который представляет числа в виде значений с плавающей запятой. </p>
Если вы храните целые числа в переменных с плавающей запятой и просто складываете, вычитаете и умножаете, они останутся целыми (по крайней мере доони выходят за пределы).Но деление с использованием функций триггера и т. Д. Приведет к ошибкам, которые необходимо учитывать.
-m @