Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 23, 2009 18:06:37

Uzurpator
От:
Зарегистрирован: 2009-06-15
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Зачем дробить дробное?

Доброго времени суток!

>>>float(3.9999)
3.9998999999999998
>>>float(3.99999999)
3.9999999900000001
Вопрос: почему функция float() не выводит просто 3.9999 и 3.99999999 соответственно? Может, глюк какой?



Офлайн

#2 Июнь 23, 2009 18:39:22

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Зачем дробить дробное?

Стоит почитать основы представлений вещественных чисел в ЭВМ
Простой ответ - http://forum.vingrad.ru/forum/topic-67371/15.html#

Офлайн

#3 Июнь 23, 2009 18:47:38

Uzurpator
От:
Зарегистрирован: 2009-06-15
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Зачем дробить дробное?

Спасибо. Насколько я понимаю, главная мысль :“Это не ошибка. Проблема вызвана внутренним представлением чисел с плавающей точкой, использующим ограниченное количество двоичных цифр для представления десятичного числа. Некоторые десятичные числа не могут быть точно представлены в двоичном виде. В результате появляются небольшие ошибки округления.” Еще раз спасибо.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version