我一直在想,爲什麼當計算機應該給出準確的答案時,花車並不是真正的敏捷。我在某本書的某本書中讀到,最好將變量與我們想要的值進行比較,因爲計算值可能並不總是我們所期望的整數。機器如何解決這些分歧?對網站的任何鏈接,歡迎:)爲什麼在計算浮動和雙打時會出現錯誤?
1
A
回答
3
喬恩斯基特這裏提到它(向下滾動,直到你看到「雙d = 0.3;」畫上一個幻燈片): http://msmvps.com/blogs/jon_skeet/archive/2009/11/02/omg-ponies-aka-humanity-epic-fail.aspx
更詳細的答案在這裏: http://download.oracle.com/docs/cd/E19957-01/806-3568/ncg_goldberg.html
+0
鏈接http://msmvps.com/blogs/jon_skeet/archive/ 2009/11/02/omg-ponies-aka-humanity-epic-fail.aspx不再可用。不過,我通過https://web.archive.org訪問它(2010年8月14日的快照) –
0
一個簡單的答案就是計算機使用有限的數字來表示一個數字。
如果您試圖表示十進制數1/7,那麼它將是0.14285714 ...等等。 計算機也發生同樣的情況,即試圖用二進制表示1/10(0.1的十進制數),這將成爲一個無限級數的井。
因此,有時你不會得到最準確的數字。
相關問題
- 1. 爲什麼在計算幾個凸包的時候會出現Qhull錯誤?
- 2. 使用[]運算符時爲什麼會出現編譯錯誤?
- 3. 打開Eclipse時,爲什麼會出現錯誤對話框?
- 4. 爲什麼會出現這個雙渲染錯誤?
- 5. 爲什麼在使用printf時會出現運行時錯誤?
- 6. 爲什麼會出現分段錯誤?
- 7. 爲什麼Gradle會出現此錯誤?
- 8. 爲什麼會出現這個錯誤?
- 9. 爲什麼會出現以下錯誤?
- 10. 爲什麼會出現名稱錯誤?
- 11. 爲什麼會出現分段錯誤?
- 12. 爲什麼會出現分析錯誤?
- 13. 在C#中,爲什麼我得到「無法拋出雙浮動錯誤」?
- 14. 爲什麼浮動崩潰不會出現在固定位置
- 15. 爲什麼在使用form_for時會出現attribute_methods錯誤?
- 16. 爲什麼在IPAD上測試時會出現此錯誤?
- 17. 爲什麼datatable爲空時會出現錯誤?
- 18. 從jquery轉換爲angularjs時,爲什麼會出現此錯誤?
- 19. 計算公式時出現Java錯誤
- 20. R個時間計算出現錯誤
- 21. 爲什麼vbScript「和」運算符會導致溢出錯誤?
- 22. 爲什麼在設置PhantomJS驅動程序時出現錯誤?
- 23. 爲什麼在iOS5中調用tweet請求時會出現動畫錯誤?
- 24. 爲什麼在打印「hello」時打印2會導致錯誤?
- 25. 爲什麼我從其他人打電話時會出現此錯誤?
- 26. 爲什麼嘗試使用presentViewController時會出現此錯誤?
- 27. 爲什麼鏈接時會出現多重定義錯誤?
- 28. 爲什麼使用prepareToRecord時會出現AudioConverterNew錯誤?
- 29. 爲什麼使用LOAD DATA INFILE時會出現錯誤?
- 30. 試圖上傳圖像時,爲什麼會出現此錯誤?
也許你可以在這篇文章中找到有價值的東西:http://stackoverflow.com/questions/872544/precision-of-floating-point – DeCaf