Python 2.7.9 (default, Dec 10 2014, 12:28:03) [MSC v.1500 64 bit (AMD64)] on win32
>>> print '%.100f' % (9999.0/10000)
0.9999000000000000110134124042815528810024261474609375000000000000000000000000000000000000000000000000
從原理上闡述下為什么產生這樣的誤差?
2 回答

人到中年有點甜
TA貢獻1895條經驗 獲得超7個贊
可以參考IEEE的浮點數標準
浮點數在計算機中的存儲往往采取這個標準, 其只能精確表示2^x的倍數, 而除此之外的其它數字只能盡量逼近.因此使用浮點數是會有誤差的.
添加回答
舉報
0/150
提交
取消