Excel2007闹笑话850×77.1=100000

Excel2007闹笑话850×77.1=100000,第1张

有人在Google群中以Microsoft Office Excel为主题的新闻群中反映,Excel 2007存在重大bug,会将850*77.1错误地计算为100,000,而不是65,535。

当然,850*77.1并不是特例。如果你不信,可以在Excel 2007中计算以下乘法运算:

= 5.1 * 12850
= 10.2 * 6425
= 20.4 * 3212.5
= 40.8 * 1606.25
= 154.2 * 425
= 212.5 * 308.4
= 308.4 * 212.5
= 425 * 154.2

结果是10万对吧?

这个看似不可思议的问题很快得到了众多专家的证实,Excel MVP贝尔纳德·莱因梅(Bernad Leingme)第一个站了出来。

其实问题出在65535这个数字上。虽然我们还没有最终确定是什么原因,但是考虑到65535这个数字的特殊性(也就是1111111111111111111),我们初步怀疑Excel 2007出现了浮点计算错误或者舍入错误。另外,可以看出乘法口诀中至少有一位小数有错误。

此外,如果将上述乘法之一放在单元格A1中,则A1+1将返回100001,A1*1将返回100000,A1/1将返回100000。这些无疑是错误的,因为Excel 2007已经把A1的值取成了100000,但奇怪的是,A1*2返回的是正确的131070,A1-1也是65534。是的,A1/2也精确地得到32,767.5。Excel 2007这么任性,真的很难搞清楚。

测试也表明,在Office 2000/XP/2003等旧版本中不存在这个bug。似乎只是Office 2007的一项新“专利”。

出现这么低级的bug,显然是微软工作人员的开发和审核不严谨。至少可以说老版本的产品没有问题,这无疑会让微软更加尴尬。


位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » Excel2007闹笑话850×77.1=100000

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情