[問題]非常小的浮點數 數值運算

看板MATLAB作者 (原來令人沉重的愛不是愛~)時間13年前 (2012/04/10 17:10), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
大家好, 我現在遇到一個問題,我想要精確的計算非常小的數的加法運算, 目前我可以算出一個差值 P=9.337769019712045e-14 要把這個差值P加上一個數A=0.999999999997528, 得到一個數B=0.99999999999762157. 可是現在問題來了,我在計算B-A時所得到的值卻沒有辦法與P相同, B-A=9.336975637097567e-14,好像超過10^(-16)後就差很多了… 不知道有沒有什麼辦法可以更精確的計算到小數點20位後面? 我有爬過文,發現有人說用vpa或sym可以試著解決這問題, 但我用過vpa了,不知道要怎麼結合sym使用? 所以還是不知如何下手,想請問是否有人知道解決方法? 非常謝謝大家~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 193.145.39.154
文章代碼(AID): #1FW_ZtsL (MATLAB)