Показать сообщение отдельно
Старый 26.06.2012, 00:34   #11
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: Баг или мудаг?

Всё дело в точности float и преобразовании типов. Например добавление сверх малого float числа к сверх большому float числу может вызвать неадекватную реакцию в некоторых реализациях. Происходит это по тому что плавающая точка, меняет своё положение делая число или точнее (при малых величинах) или менее точным вплоть до целого при хранении большого близкого к придельному числа.

Естественно для числа 7654321,0 прибавление числа 0,1234567 или не даст ожидаемого эффекта, мы получим что то типа 7654321,1 или выдаст Inf/NaN.
Хотя последнее возможно скорее при умножении/делении.

ИМХО
__________________
(Offline)
 
Ответить с цитированием