正文 第63章 為什麼計算機能猜出你的年齡(1 / 1)

計算機中有一個猜年齡遊戲,即讓計算機猜你的年齡。猜的方法是這樣的:首先計算機在屏幕上顯示如下兩行數字:111135312729153172172523199如果你的年齡在這些數之中,你從鍵盤上回答“Y”。否則回答“N”。然後計算機又顯示兩行數:2101862215302631119723311427

你仍然根據你的年齡數是否在其中,從鍵盤上回答“Y”或“N”。如此往複,共回答5次。

假如你的年齡是10歲,你五次回答的應該是:N、Y、N、Y、N。如用“1”表示Y,“0”表示N,並從第五次開始順序往回書寫,則得到01010。它就是10的二進製數。這是巧合嗎?不是,計算機第一次顯示的數如果換成二進製數,其右數第一位都是1,如你回答“N”,等於告訴計算機,你的年齡的二進製數右數第一位不是1,是0。同理:第二次顯示的數換成二進製數後,其右數第二位都是1。回答“Y”,又是告訴計算機你年齡的二進製數右數第二位是1。依此類推,你回答5次,就告訴了你年齡的二進製數5位分別是幾。實際等於你告訴計算機你多少歲。但隻能猜出年齡在31歲以內的。因為255=32。若要猜100歲以內的年齡,則需回答7次。二進製數不僅可以猜年齡,還可以使許多運算化簡,它的應用將會越來越廣泛。