[其他] 0.1+0.1+0.1-0.3=?已回收

看板MATLAB作者 (World Cup)時間14年前 (2011/06/23 12:27), 編輯推噓6(603)
留言9則, 7人參與, 最新討論串1/3 (看更多)
這只是閒聊文。 這個問題已經很久了,沒想到到了 2011a 還是一樣存在 手上有 matlab 的可以玩看看。 這告訴我們在用判別式的時候少用 == 0.1+0.1+0.1 ~= 0.3 0.1+0.1 == 0.2 你說奇怪不奇怪 --  ╔╯═╗  ╦╦╦ ╬╬╯ ╰╦ ╬ ╬╬╗ ╦╰╬═  ╠╬═ ══   ╔══╗ ╔╬╬╗ ╬ ╩ ║ ╬>║< ╬═ ╔╗╔╗ ∕╚﹨﹨ ╠═ ╠═ ║ ╔╬╗ ╚╯ ╩ ╝  ╩═ ╚╝║╯   ╠═╗ ╚═╗╚══╝ ╠╬║    ╬╬║ ═╬ ╬ 國家研究院AcademyEarthEnvironEcophilia環境板 ╯ 。 ╯ ╩╯ m3m3ρ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 70.74.196.74

06/23 12:50, , 1F
其實這是電腦的問題 不是MATLAB的問題 用float point
06/23 12:50, 1F

06/23 12:50, , 2F
本來就有finite word length error
06/23 12:50, 2F


06/23 13:16, , 4F
那是浮點數誤差問題,非整數請不要使用==來判斷
06/23 13:16, 4F

06/23 18:47, , 5F
那如果不得已要判斷 應如何改寫??
06/23 18:47, 5F

06/23 20:17, , 6F
我也想知道 QQ 不然有時後會出錯
06/23 20:17, 6F

06/23 20:19, , 7F
fabs(a-b)<eps
06/23 20:19, 7F

06/23 21:18, , 8F
這是浮點數計算的問題 只能說你的程式語言老師常請假
06/23 21:18, 8F

06/24 12:01, , 9F
不奇怪阿~~
06/24 12:01, 9F
文章代碼(AID): #1E0i2VKI (MATLAB)
文章代碼(AID): #1E0i2VKI (MATLAB)