網路上有人發現使用Android內建的計算機程式去做 14.52減去14.49,結果卻是0.0299999999?
我也不信的去試了一下手邊的Android手機(DZ),還真的是前述的結果,另外也做了其他運算...
11.52-11.49
12.52-12.49
13.52.13.49
15.52-15.49
這四組的結果也都是0.0299999999的錯誤結果。
這是OS本身內建的程式BUG?還是手機的問題?
不過也不是很大的問題啦,有其他計算機程式可以替代。
我寫個Android程式驗證是否是變數資料型態的問題
以14.52 - 14.49當作例子
1. 變數宣告為浮點數 (float)
14.52 - 14.49 = 0.030000687

2. 變數宣告為倍精度浮點數 (double)
14.52 - 14.49 = 0.02999999999999936

3. 變數宣告為整數 (int)
14.52 - 14.49 = 0

所以...Google做的計算機,資料型態應該是宣告成double才會造成這個問題

我覺得Google根本是懶得理這個問題,多設幾個條件式就可以避免這問題了吧

無聊的可以下載這個apk去玩玩看...(按menu有設定可以選擇float、double及int)
附加壓縮檔: 201103/mobile01-3b68e66bb6b1a257d5019c35dab25530.zip
RealCalc Scientific Calculator
handyCalc Calculator
Scientific Calculator
希望大家可以分享一下自己覺得好用的計算機軟體。因為興趣的關係,我常常會用到計算機,所以希望能找到更棒的計算機軟體。 :)
內文搜尋

X