不知道這樣的BUG算不算嚴重呀,剛剛從驅動之家網站看到的訊息,聽說微軟Office 2007中的Excel試算表軟體,竟然計算錯誤了,而且還是算錯一系列的唷!算錯啥?
850×77.1 你猜會等於多少?
微軟說:100000!
更新:謝謝「路人戊」提供的訊息,微軟已針對此問題經提供修補程式了:
沒錯,850×77.1=100000,,
剛剛也特地找來跑一次,沒錯,的確是850×77.1=100000,請看圖:
在這個討論區裡提到,有位網友還發現了下面這些運算也都會突槌,不是一個而已喔:
=5.1*12850
=10.2*6425
=20.4*3212.5
=40.8*1606.25
=77.1*850
=154.2*425
=212.5*308.4
=308.4*212.5
=425*154.2
..etc
我很不懂數學運算,不是很懂下面這段是啥意思,反正就是…出糗了!哈哈~~
引用驅動之家網站上的推測:
...事實上,問題出現在65535這個數字上。雖然現在還沒能最終肯定到底是什麼原因,但考慮到65535這個數字的特殊性(轉換成二進制就是1111111111111111),初步懷疑Excel 2007在浮點計算或者舍入誤差方面出現了失誤。另外還可以看出,出錯的乘法公式中至少有一個數字帶有一位小數。
更進一步地,如果把上述乘法之一放在A1單元格裡,然後A1+1就會返回100001,A1*1返回100000,A1/1返回100000。這些無疑都是錯誤的,因為Excel 2007已經把A1的值當成了100000,不過奇怪的是,A1*2返回的卻是正確的131070,A1-1也是65534沒錯,A1/2也準確得到了32767.5。Excel 2007如此反覆無常的確令人難以琢磨。
測試還表明,Office 2000/XP/2003等舊版本都不存在這個bug,看來只是Office 2007的新“專利”了。
(以上文字引用字這裡)
看完之後有沒心底一陣寒顫?如果你是使用Excel來統計、整理一些東西的話,可能都要再用計算機計算一遍吧?我猜,最近可能開始會流行一種說法,當我們對某些人講出來的數字(譬如說唱片銷售數字、xx遊行人數)有疑慮的時候,可以回他說:
「你是用Excel算的嗎?」,哈哈。
,延伸閱讀:Bug in Excel 2007