近日,一則「手機計算器全線陣亡」的消息登上各大熱搜榜。不少網友發現自己手機的計算器出現了一個錯誤:在手機計算器中輸入「10%+10%」後,得出的結果不是0.2,而是0.11。記者用自己的華為手機測試以後發現,得出的結果也是0.11。
有不少網友測試後發現,蘋果、華為、三星、OPPO、vivo、小米等多款手機給出的計算結果均為0.11,僅有國內的魅族、錘子、努比亞旗下機型最終的計算結果為0.2。
那麼,手機計算器究竟為什麼會犯這種低級錯誤呢?引發該錯誤的機制又是什麼?
經過多方求證,記者得知,事實上,手機計算器出現這種情況不能算是錯誤,這主要是因為非科學計算器和科學計算器,對輸入符號的理解不同。人在計算時,會尊重計算中加減乘除的優先級,先做乘除再做加減,結果就是10%+10%=0.2。
然而,部分手機中的計算器APP按照非科學計算器的計算邏輯,則認為連續百分比計算,即「10%+10%」是按照10%+(10%×10%)的邏輯進行計算,於是便得出0.11的結果,所以最終結果與常識不符。這只是因為計算器使用的算法邏輯不同,並不能算是計算錯誤。
非科學計算器的計算邏輯,默認的連續百分比計算並非「10%+10%」,而是「10%+(10%×10%)」。記者在小米手機的計算器中測試,「5+10%的結果為5.5」,「20%+10%的結果為0.22」,均符合這一計算邏輯。
(來源:科技日報)