有網友發現自己的手機出現了神奇的Bug ,用自帶的計算器輸入20%+20%,得到的答案居然是0.24。
難道不應該是20%+20%=0.2+0.2=0.4嗎?
小編試了幾個品牌手機的自帶計算器,結果發現大部分的手機計算器都「智障」了。
iPhone 11計算器
三星NOTE8 計算器
華為手機計算器
小米10 Pro計算器
還有一台iPhone7,居然得出了0.04的答案!
臺式電腦自帶的WIN10計算器,輸入20%直接變成了0,完全無法計算。
為啥會算錯?
按照一般人類的計算邏輯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
只有把百分數加上括弧, 也就是輸入「(20%)+(20%)」
算出來的才符合人類的計算邏輯 結果等於0.4
因為早期的計算器按鍵數量有限,並沒有括弧,要計算a(1+b%)這樣的式子很麻煩,所以就簡化成了a+b%,這算是一個歷史遺留問題,屬於程序员「語法糖」的一種。
「語法糖」是一種方便電腦程序员使用的演算法, 可以讓程式更加簡潔,有更高的可讀性。
現在的手機計算器則保留了這種演算法特性。