PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
MATLAB
[討論] 請問數值的表示問題
作者:
jasonlee1001
(Jason)
2016-12-25 10:49:56
x=4.181-4.169
x = 0.0120
>> y=4.169-4.157
y = 0.0120
>> x-y
ans = 8.8818e-016
請問大家有甚麼辦法可以讓 x-y = 0 ?
我另外算了以下:
>> x=4.157-4.146
x = 0.0110
>> y=4.146-4.135
y = 0.0110
>> x-y
ans = 0
為什麼這個的結果又是 0 ?
作者:
sppmg
(sppmg)
2016-12-25 13:23:00
數值儲存問題,因為電腦中用二進位,浮點數只能存成接近的數值(所以銀行據說使用BCD編碼存,就不會漏掉小數了)。顯示數值後面可能還有極小的數值差異。round(pi,3) ,四捨五入至3位小數所以if比較兩浮點時,千萬不要用==比,改用abs(a-b)<1e-10這形式。整數(integer型態)就沒這問題。
作者:
rex0707
(我就是我)
2016-12-27 13:11:00
machine error
作者:
tn00364361
(小氵斿)
2016-12-27 20:57:00
machine epsilon
繼續閱讀
[求助]迴圈中使用fopen、textscan
xx013652
[討論] 圓的座標
ziggyzzz
[其他] 初學者請求大大幫忙debug
death811125
[繪圖] 電壓2D PRPD時序問題
longtoes
[討論] 關於invfreqs
kampa
[其他] 如何用.bat檔執行指定位置的.p檔
s020201
[繪圖] 做離散傅立葉轉換DFT
weien0126
[討論] 請問matlab如何debug提升運算效能
potter1529
[討論] 關於終止的指令
Blood5499
[討論] 好像沒有HEX轉有號數的函式?
qeagle
Links
booklink
Contact Us: admin [ a t ] ucptt.com