[問題] 關於精確度的小問題已回收

看板MATLAB作者 (歲月的童話)時間16年前 (2009/11/10 00:53), 編輯推噓1(104)
留言5則, 3人參與, 最新討論串1/1
兩個小問題 1.用==來判斷兩數是否相等,兩數要相差多少以下,matlab才會視為相等? 我有兩數差e-17,他還是認為不相等 2.計算出來的數字很小,如3e-30,要如何讓matlab視為0 我是可以針對各個變數用eps去處理 可是變數有點多 而且在沒算完之前,我也不知道哪些變數剛好會出現這個現象 所以想問有沒有設定可以讓matlab的計算精度不要那麼高 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.15.12

11/10 07:16, , 1F
除非用整數,否則幾乎不會相等,用相減後的差自行判斷吧
11/10 07:16, 1F

11/10 09:24, , 2F
你只是覺得數值很接近該視為一樣,但在記憶體內的儲存表
11/10 09:24, 2F

11/10 09:25, , 3F
示兩個東西怎樣都不一樣(譬如其中一個是F另一個卻是E)
11/10 09:25, 3F

11/10 11:32, , 4F
所以意思是無解囉 謝謝你
11/10 11:32, 4F
※ 編輯: Qupi 來自: 140.112.230.148 (11/10 11:33)

11/10 21:12, , 5F
你可以用兩數相減小於某個極小值來判斷 ( a-b<=1e-10 )
11/10 21:12, 5F
文章代碼(AID): #1A-4aRfK (MATLAB)