爱思助手

历代 iOS 都存在的有趣“Bug”:计算器算错百分数

10%+10% 的结果是 0.11 还是 0.2?这个问题貌似难倒了 iPhone,使用自带计算器计算“10%+10%”的时候,得出的结果是 0.11,而不是 0.2。这一眼看起来是 Bug,但其实是计算器处理运算符号的逻辑导致的。


历代 iOS 都存在的有趣“Bug”:计算器算错百分数


一个小小的计算器,引起了大量用户的关注,对于这一问题,小米手机的产品总监也前来科普:


最早的电子计算器并没有“%”,是后来加的,作为后续改进,它解决了计算场景中的常用痛点,这很可能是西方人计算折扣、小费、利息等常见场景。


例如:货物 560 元,20% 的折扣(打八折)后多少钱?560-20%=448!


资方存入 2800 元,计年息 6%,本息总计多少?2800+6%=2968!


另一位大佬魅族副总裁华海良发布微博表示:“其实本质上并不是对或错的问题,我们只是考虑的更多,增加了人性化的算法判断。10%+10%=0.11 这个是国外的使用逻辑,而国内的算数逻辑是 10%+10%=0.2,所以我们针对不同地区的固件做了不同的算法判断。” 


在计算器里直接输入10%+10% 时,计算器读到的逻辑是 10%+(10%*10%),所以最终结果与常识有所区别,这只是因为使用的算法逻辑不同,并不能算是计算错误。