百分之0.1是多少 百分比的计算方法


文章起始之际,请各位打开手机计算器,一同计算一下标题中的“50%+50%”,看看结果究竟为何?

在大多数情况下,你会看到三种不同的结果展示:

第一种情形,像OPPO、vivo、小米等品牌的手机会显示出0.75的结果;

第二种情形,魅族(以及部分小品牌)则会展示为1的答案;

第三种情况则是iPhone系列会先显示0.25,但若你再按下等号,结果也会变成0.75。

这样的现象是否让你感到惊奇?再让我举一个有趣的例子,比如计算100加上20%。在小米等品牌的手机上,结果会显示为120%,而魅族则显示为100.2。

那么,为何会出现不同的答案呢?

问题一:50%+50%如何得来0.75?

设想一下这个场景,你在尽享游戏之乐时,一个游戏Boss掉落了一件属性不错的装备。这件装备上有一条属性“+15%近战伤害”。若你的攻击力原本是100点,装备上这件装备后,你的攻击力会是多少呢?

相信大多数玩家都会不假思索地回答:115。几乎没有人会认为是100.15吧?

百分比,即%,是一种表达比例、比率或分数数值的方法。在此类计算中,我们会主动将100点伤害加上15%的额外伤害,换算成数值即为100加上100乘以15%,结果是115,心算起来毫无压力。

当装备多了,如头盔加42%、靴子减17%、手套加50%、技能再加14%时,心算就变得困难起来。

为了更准确地计算角色的最终伤害,你可能会使用计算器。你会按下如下的算式:

关于这个算式,你可能需要按多次按钮,稍有疏忽就会产生误差。而在金融等行业,需要进行的高度复杂的计算只会更多,出错的可能性也随之增加。

函数式计算器对百分数计算的逻辑进行了调整。A+B%的计算方式更改为A+(A×B%)。这样一来,之前的复杂算式得以简化。

回到开头的问题,将“50%+50%”带入这个新公式中,其结果便是0.75。

当前,A+B%=A+(A×B%)已成为全球通用的做法。微软的资深开发人员Raymond Chen曾在开发者日志中写道:“Windows计算器中百分键的工作方式与一些廉价的袖珍计算器相似。这些袖珍计算器的百分键设计并非针对数学家和工程师,而是为了满足普通人的日常计算需求。”

从这篇日志可以看出,这种计算方式在全球范围内被广泛接受。然而在国内,许多用户仍坚持认为“50%+50%”应等于1。若想在手机上准确计算两个百分比的和,需额外加上括号。

其实深入探究的话,还会涉及到计算器算式堆栈等复杂的语言问题。

问题二:是懒得改还是没必要?

既然手机计算器的百分比计算如此“反直觉”,为何厂商不进行更改呢?

已从魅族离职的华海良曾在博文中提到魅族科技在处理这个问题时的想法。他们增加了人性化的算法判断,并针对不同地区的固件做了不同的算法调整。

对此,MIUI的金凡也发表了看法。他解释说:“我们之前尝试过将10%+10%显示为0.2,但最终还是决定遵循全球统一标准。因为大多数人并不习惯使用百分比输入(我们更倾向于输入0.1而非10%),因此更改逻辑对国内用户的好处并不明显。”

金凡的发言虽然转移了话题,但他的观点其实很巧妙地让用户更容易接受这种差异。归根结底,手机计算器的使用率已经不高,百分比符号的使用更是少之又少。