(若是和其他不同軟體互動之問題 請記得一併填寫)
軟體:Excel
版本:2007
其實我只是很簡單再寫一個資料檢測公式
(函數知道的不多 所以都用簡單的運算式做資料檢測整理)
意外發現一個Bug
A1=0.07
B1=A1*100
C1=ROUND(A1*100,0)
D1=B1-C1
E1=IF(D1=0,"Y","N")
F1=IF((B1-C1)=0,"Y","N")
理論上 E1跟F1儲存格應該得到一樣的答案
但是E1得到的是Y F1得到的是N
然後只有某些數字會有這樣的bug
A1= 0.07 0.14 0.28 0.29 0.55~0.58等.....
若是A1= 0.007 B1跟C1皆是乘上1000也不會有這樣的問題
這個bug最後是不影響我的資料整理(改寫乘上1000就解決了...)
只是對這個Bug感到無比疑惑....="=
有爬文查到 "浮點算術中的進位誤差" 這個Bug
但我也不知道是不是能用來解釋我遇到的這個問題
有人有解嗎?