你试着翻开自己的手机核算器,测验输入50%+50%等于多少,横竖我的华为Mate30 Pro的核算机成果是0.75。我们都知道50%是二分之一,也便是0.5,但为何0.5+0.5不是等于1,而是等于0.75呢?是否很奇特?
不出意外的话,每个手机的核算成果都是不一样的。比方华为、苹果、OPPO、小米等手机的核算成果都是0.75,魅族等手机的核算成果为1。为什么不一样的品牌的手时机呈现两种状况呢?莫非同是安卓都一定会呈现不一样的成果么?这一个论题引起了不少人的评论,其底子含义是逻辑的不同。
等于0.75的核算公式是沿袭的A+B%=A+(A×B%),并渐渐的变成了了全球常规,所以,呈现50%+50%=0.75并不稀罕。微软资深研制人员曾对此表明,假如你是一名工程师,可能会以为这样的方法很反直觉,乃至是核算公式卡Bug,但关于一般民众来说,这个核算公式却很合理。假如想要成果等于1,那么仅需要将50%加上就可以了。
由于前史原因(初代核算器不支持屡次输入,也便是说每次只能输入一次加减乘除),老外们的数学也不咋地,日子中又会呈现很多相似上面这样的问题。为了更好的进步功率,老外们就把300+300*10%,简化成了300+10%,直接得出330,相似的,2868-20%=2294.4。你猜怎么着?工作功率极大的提高,针不戳!
后来就传到了国内,国内的大多数手机核算器都保留了这个传统。当你输入50%+50%的时分,手机先会把前面一个50%转化成0.5(由于它的前面没有数了,所以就默许转成小数,a%=a/100),后一个就理解为「加上前一个数的50%」,所以50%+50%=50%+50%*50%=50%+25%=75%=0.75。
此前MIUI的金凡也给出了“中国人算力过剩,对西方同志来说却能救命”的解说,表明其在开发时曾将成果改为1,但终究仍是遵从的全球逻辑“A+B%=A+(A×B%)”:“由于中国人不太会去用%,更改后不会对国内用户所带来影响,但假如设为成果为1,会使习惯用%的用户溃散,所以终究挑选全球规范。”