熱點追蹤
近日,一則“手機計算器全線陣亡”的消息登上各大熱搜榜。不少網友發現自己手機的計算器出現了一個錯誤:在手機計算器中輸入“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”,均符合這一計算邏輯。
華為榮耀業務部總裁趙明在微博上表示,實際上這里有一個背景,就是在算小費等特殊場景,很多顧客在一些國家餐廳用餐后會給10%到20%的小費,這時在計算器中輸入“100+10%”就相當于“100+100×10%”,這樣就簡化了輸入步驟,是一種相當方便的人性化設計。
魅族科技副總裁華海良也發微博表示:“其實,本質上這并不是對或錯的問題,我們只是考慮得更多了,增加了人性化的算法判斷。‘10%+10%=0.11’這個是國外的使用邏輯,而國內的算數邏輯是‘10%+10%=0.2’,所以,我們的APP針對不同地區進行了不同的算法判斷。”(記者 陸成寬)
關鍵詞: 手機計算器出錯