▽
文/好奇实验室
最近,我在抖音搜到了一个奇葩的视频。
有网友发现自己的手机出现了神奇的Bug ,用自带的计算器输入20%+20%,得到的答案居然是0.24。
20%+20%=0.2+0.2=0.4
这个才是正确答案!至于正确答案为啥是0.4,这不是小学数学题吗?算不对的话小心数学老师打你屁屁!
我又尝试了各大品牌手机的自带计算器,结果让人惊讶,大部分的手机计算器脑子都“瓦特”了。
三星NOTE8 计算器
小米10 Pro计算器
华为手机计算器
iPhone 11计算器
这几款手机出现了同样的计算BUG。
让人没想到是,办公室的一台“祖传”苹果——iPhone7,居然给出了更奇怪的答案0.04!
好奇君又用办公室的台式电脑自带的WIN10计算器,试了一下,输入20%直接变成了0,完全无法计算。
连小学数学题都算错?
好奇君研究了大半天,大概有了点眉目。
举个例子,抖音给的算式是20%+20%,分析起来并不是很直观,我们先换一个式子2+20%,这样就很容易理解为什么会出现这样的错误。
按照一般人类的计算逻辑,2+20%的运算过程应该是:2+20%=2+0.2=2.2
但计算器的运算结果却是:2+20%=2.4,这从数学逻辑上完全讲不通啊!
但是如果从语文逻辑上讲,反而通了!
其实这道题目用语文表达就是:2增加了20%,原价2元,现在涨价20%,现在要多少钱?
2+20%=2×(1+20%)=2.4
当然是2.4元!
所以再也不要讽刺别人“你的数学是语文老师教的了”,语文老师的数学也是棒棒的!
按照这个内部运算逻辑,抖音那道算术题在计算器中应该是这样的:
20%+20%=0.2×(1+20%)=0.24
这并不是手机系统的BUG,事实上计算器的计算过程大都如此,很多网友说用科学计算模式可以得出正确答案,好奇君用三星和苹果的科学计算模式试了一下,答案还是0.24。
三星
苹果
只有把百分数加上括号,也就是输入“(20%)+(20%)”,出来的结果才符合人类的计算逻辑0.4。
为何算法如此奇怪?
因为早期的计算器按键数量有限,并没有括号,要计算a(1+b%)这样的式子很麻烦,所以就简化成了a+b%,这算是一个历史遗留问题,属于程序员“语法糖”的一种。
“语法糖”是一种方便电脑程序员使用的算法,可以让程序更加简洁,有更高的可读性。
现在的手机计算器则保留了这种算法特性。既然不合适大众的理解认知,为什么不改过来呢?
去年9月,网上也曾爆出过某品牌手机计算器的问题,当时该品牌的副总裁回复了网友的问题:
原来这个算法逻辑是国外常用的,而国内的的算法就是20%+20%=0.4。
怪不得,全世界都说中国人的数学计算比较厉害!老外的数学逻辑跟咱太不一样了。
外国人的这种计算逻辑,在一些特定使用场景相当重要,比如算小费,大家知道很多外国的餐厅需要付5%-10%的小费,而外国人的数学计算有点让人“着急”。
好奇君曾找过三位外国留学生朋友,给他们准备了一套小学四年级的数学卷。
为了照顾他们,只挑选了13道相对简单的题目。
不过考试刚开始,就有小哥发问:能不能用计算器?
测试结果:3人分别做对了10题、8题、5题,普遍感觉题目有难度。
这样的计算能力,如果要计算5-10%的小费,只需要在手机上按100+5%,就相当于100×(1+5%),算不算是一种很人性化设计!
话说回来,这种算法并不算错,对老外还有点大用处。
但既然是在国内上市的手机,虽然咱国人数学能力强,能把20%无缝转换为0.2,用不上计算器帮忙。
特别是某些国产品牌的手机,为什么不能改成国人熟知的习惯,让大家简单一些。
End
你可能还感兴趣