[問題] 乘法溢位問題

看板C_Sharp (C#)作者 (Michael)時間8年前 (2016/08/26 22:31), 編輯推噓2(203)
留言5則, 5人參與, 最新討論串1/1
我今天把0.05*423 結果等於21.150000000000002 而不是21.15 請問各位大神為什麼會有這個問題? 另外我現在是土法煉鋼的使用Math.Round()解決, 請問有更正確的做法嗎? 感恩 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.231.235.133 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1472221872.A.8E3.html

08/26 22:47, , 1F
我試了沒問題
08/26 22:47, 1F

08/26 23:38, , 2F
或許可以查一下IEEE754
08/26 23:38, 2F

08/27 00:25, , 3F
用decimal
08/27 00:25, 3F

08/27 11:24, , 4F
用double或float都會有誤差
08/27 11:24, 4F

10/15 09:11, , 5F
平台是什麼
10/15 09:11, 5F
文章代碼(AID): #1Nm5AmZZ (C_Sharp)
文章代碼(AID): #1Nm5AmZZ (C_Sharp)