tft每日頭條

 > 圖文

 > 推薦一款實用的計算器

推薦一款實用的計算器

圖文 更新时间:2024-12-23 10:16:59

推薦一款實用的計算器(一個小小計算器)1

終于有人注意到這個問題了!

每個人的手機當中,都藏着一個難以察覺的“漏洞”

它也許微不足道,但運氣不好,也可能會釀成财産損失。

推薦一款實用的計算器(一個小小計算器)2

嗯,就是前兩天上了熱搜的——

推薦一款實用的計算器(一個小小計算器)3

事情是這樣的……

推薦一款實用的計算器(一個小小計算器)4

機哥先問問大家一個簡單的計算題。

10% 10% =?

毫無疑問,答案是 20%。

如果用小數表示,也就是 0.2。

推薦一款實用的計算器(一個小小計算器)5

可據網友們反映,這道簡單的計算題,卻讓大部分品牌的手機陣亡。。

巧了,機哥啥都缺,唯獨不缺手機。

推薦一款實用的計算器(一個小小計算器)6

所以分别拿出主流品牌的手機,試了試。

推薦一款實用的計算器(一個小小計算器)7

結果如下:

華為

10% 10% = 0.11

推薦一款實用的計算器(一個小小計算器)8

小米

10% 10% = 0.11

推薦一款實用的計算器(一個小小計算器)9

OPPO

10% 10% = 0.11

推薦一款實用的計算器(一個小小計算器)10

vivo

10% 10% = 0.11

推薦一款實用的計算器(一個小小計算器)11

一加

10% 10% = 0.11

推薦一款實用的計算器(一個小小計算器)12

推薦一款實用的計算器(一個小小計算器)13

國産熱門品牌全線陣亡……我們來看看國外的廠商。

蘋果

10% 10% = 0.11

推薦一款實用的計算器(一個小小計算器)14

三星

10% 10% = 0.11

推薦一款實用的計算器(一個小小計算器)15

看來無論是國産,還是國外品牌,無一例外地栽了。。

真的無一幸免嗎?

推薦一款實用的計算器(一個小小計算器)16

當機哥絕望地把目光投到國産小廠,希望出現了。

魅族!

推薦一款實用的計算器(一個小小計算器)17

感動,這就叫極緻打磨啊朋友們。

除此之外,網友說另一家小廠商——錘子,也能通過這次考驗。

機哥拿出堅果 R1 試了一下。

推薦一款實用的計算器(一個小小計算器)18

錘子的計算機常規界面……并沒有 % 這個符号。

推薦一款實用的計算器(一個小小計算器)19

咱隻能切換到科學計算器上。

果然,它也算出了我們想要的答案。

10% 10% = 0.2

推薦一款實用的計算器(一個小小計算器)20

但是,普通計算器和科學計算器邏輯肯定會有不同,對比稍有點不公平。

推薦一款實用的計算器(一個小小計算器)21

OK,所以機哥今天,決定把“年度最佳計算器”的稱号……

頒給魅族!

推薦一款實用的計算器(一個小小計算器)22

不過,凡事咱們不能隻看表象。

手機廠商們齊刷刷“陣亡”,背後的原因到底是什麼?

推薦一款實用的計算器(一個小小計算器)23

其實拿小米做運算的時候,端倪就已顯現。

你們仔細看看機哥輸入的動作:

推薦一款實用的計算器(一個小小計算器)24

當機哥輸入第一個 10%,算式欄會直接把它轉化成 0.1。

可第二個 10%,卻被轉化成 0.01。

這麼一相加,結果當然是 0.11。

推薦一款實用的計算器(一個小小計算器)25

可問題是,計算器為什麼會把第二個 10% 識别為 0.01 呢。

推薦一款實用的計算器(一個小小計算器)26

其實稍微想想咱就能明白,計算器認為“ 10%”在人類的語境中,代表的是“加前一個數的 10%”。

所以盡管輸入的是10% 10%,計算器實際執行的是10% (10% x 10%)。

推薦一款實用的計算器(一個小小計算器)27

今天一早,小米産品總監@MIUI小凡,和榮耀總裁趙明,不約而同地在微博上解釋了這件事。

推薦一款實用的計算器(一個小小計算器)28

推薦一款實用的計算器(一個小小計算器)29

他們都有提到一個情境,可能會讓你更加理解這樣做的意義。

推薦一款實用的計算器(一個小小計算器)30

歐美那邊的餐廳,時常會有給小費的習慣。

假設機哥消費 200 塊錢,給 10% 小費,請問最後我該給多少錢?

如果按嚴謹的算術規則來寫,應該是:

推薦一款實用的計算器(一個小小計算器)31

這對于從小精通算術的中國人來說,沒毛病。

但對于那些算術稍弱的歐美人來說,就不是這樣了。

推薦一款實用的計算器(一個小小計算器)32

他們習慣于口語表達,200 塊,加 10%。

推薦一款實用的計算器(一個小小計算器)33

然後雙手跟着大腦,在鍵盤裡按下 200 10% 這樣的算式。

為了“遷就”他們,手機系統無論是安卓還是 iOS,都會把不嚴謹的算式自動轉化一番

推薦一款實用的計算器(一個小小計算器)34

最後他們還是能得到正确答案 220。

OK,現在你們理解手機,為什麼會出 10% 10% = 0.11 這種問題了吧。

推薦一款實用的計算器(一個小小計算器)35

隻不過是套用了這個優化規則而已。

而轉換到科學計算器之後,部分品牌又恢複了理智。

比如小米:

推薦一款實用的計算器(一個小小計算器)36

話說,雖然這一話題最近才在國内引爆。

推薦一款實用的計算器(一個小小計算器)37

但國外有網友早在 2016 年,就對這件事産生過迷惑。

這位網友的質疑正好和我們相反

他覺得100 10%=100.1是錯的

推薦一款實用的計算器(一個小小計算器)38

推薦一款實用的計算器(一個小小計算器)39

而且,手機的計算器不是第一次出錯了

2011 年,MIUI 論壇上出現過這樣一則帖子:

《【驚爆低級錯誤】Android 計算器出錯!!!》

推薦一款實用的計算器(一個小小計算器)40

這位網友在 HTC Desire 手機的計算器中輸入:

14.52 - 14.49 =

推薦一款實用的計算器(一個小小計算器)41

答案本該是 0.03。

推薦一款實用的計算器(一個小小計算器)42

但他的計算器算出來是 0.0299999……

推薦一款實用的計算器(一個小小計算器)43

圖片來自MIUI論壇

這個錯誤就不是 feature,而是一個實打實的程序缺陷

推薦一款實用的計算器(一個小小計算器)44

接下來拿出小本本,機哥來給大家講解一下,為什麼會出這種錯誤。

——輕度燒腦時間開始——

我們知道,手機計算器雖然是用十進制顯示,但背後的運算靠的依然是二進制

推薦一款實用的計算器(一個小小計算器)45

也就是說,當我們輸入 10 10,計算器幕後實際執行的是 1010 1010。

(十進制的 10 轉換為二進制就是 1010)

推薦一款實用的計算器(一個小小計算器)46

所以回到樓主提出的算式:14.52 - 14.49。

問題就出在 14.52 和 14.49 這兩個數,雖然在十進制中看起來清爽無比。

推薦一款實用的計算器(一個小小計算器)47

但轉換為二進制的時候,它們會變成無限循環的數

(為什麼無限循環機哥就不說了,那是數學上的問題,我們知道結果就好)

你看,機哥用的這個二進制轉換器,就提示“超出計算精度”。

推薦一款實用的計算器(一個小小計算器)48

推薦一款實用的計算器(一個小小計算器)49

推薦一款實用的計算器(一個小小計算器)50

沒辦法,超出就超出吧,咱們用這個隻保留 16 位的小數,進行下一步運算。

兩者相減,等于 0.0000011110101110

推薦一款實用的計算器(一個小小計算器)51

再把它轉換回十進制,結果是:

推薦一款實用的計算器(一個小小計算器)52

這個轉換器精度隻有16位,把我輸入的數略掉了一位

看吧,0.029998779296875,錯誤答案就是這樣出來的。

而早期安卓手機計算器的浮點精度,雖然比機哥的 16 位高,但也是有限的。

推薦一款實用的計算器(一個小小計算器)53

所以他們的答案是 0.0299999……

——輕度燒腦時間結束——

總而言之,這個問題不是 MIUI 的錯,也不是 HTC 的鍋,都是來源于 Android。

當時的安卓手機幾乎全部中槍。

你們不用拿出手機試,這個 bug 早就被修複了。

推薦一款實用的計算器(一個小小計算器)54

除了安卓,iOS 也鬧過所謂的計算器 bug

2017 年,蘋果推出 iOS 11。

推薦一款實用的計算器(一個小小計算器)55

有網友反映自帶的計算器,在計算 1 2 3 這樣的幼兒園算術題,居然會給出 24 的結果。

推薦一款實用的計算器(一個小小計算器)56

出 bug 的原因非常簡單,就是因為用戶第一次點擊“ ”,它會有個淡入淡出的動畫。

推薦一款實用的計算器(一個小小計算器)57

一旦輸入太快,動畫還沒結束時,用戶第二次點擊的“ ”無法被識别。

所以算式會從“1 2 3”變成“1 23”,答案自然變成 24。

後來蘋果在 iOS 11.2 版本中,粗暴地去掉加号的淡入淡出動畫,修複此 bug。

推薦一款實用的計算器(一個小小計算器)58

圖片來自Benjamin Mayo

再後來的 iOS 11.3,蘋果加回動畫,提高響應速度,徹底解決這個問題。

推薦一款實用的計算器(一個小小計算器)59

圖片來自Benjamin Mayo

看了這麼多計算器 bug,是不是對咱們手中的“智能”手機産生懷疑了呢。

推薦一款實用的計算器(一個小小計算器)60

要我說嘛,還是學好數理化,背熟九九乘法表,凡事靠自己才是硬道理。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved