Показать сообщение отдельно
  #10 (permalink)  
Старый 23.02.2011, 20:24
Аватар для Amphiluke
   ☽
Отправить личное сообщение для Amphiluke Посмотреть профиль Найти все сообщения от Amphiluke
 
Регистрация: 07.01.2011
Сообщений: 254

Aetae, это тоже можно объяснить, исходя из понятия т.н. «машинного эпсилон».

Размер мантиссы для вещественных чисел в Javascript составляет 52 бита. Поэтому наименьшее число, представляющее разницу между двумя возможными значениями мантиссы равно (в двоичной системе)

0.000000000000000000000000000000000000000000000000 0001,

или 2^(-52) = 2.22e-16. То есть как минимум в 17-м знаке после запятой (в десятичной системе счисления) будут наблюдаться погрешности округления. Видимо, для вашего примера, причина в этом.
Ответить с цитированием