電腦是天才還是笨蛋?解開「指令」與「程式」的溝通秘密(Programming)

電腦是天才還是笨蛋?「表達程序」單元導言:為什麼電腦需要精確的指令、什麼是程式與程式設計。串起藏寶圖自動機與指令遊戲兩個不插電活動,適合家長與老師導讀。

現在的孩子看著 iPad 能夠回答問題、播放影片,通常會覺得:「哇!電腦好聰明,它什麼都懂!」

但身為電腦科學的引路人,我們要告訴孩子一個令人震驚的事實:「其實,電腦一點都不聰明,它只是速度很快而已。」

電腦就像一個擁有超能力的巨人,它一秒鐘可以做幾十億個動作,但它有一個致命的缺點:它非常「死腦筋」,完全不懂什麼叫「常識」。

在這個單元中,我們不只要玩遊戲,更要學習如何跟這位「死腦筋巨人」溝通。我們要帶孩子從「人類的語言」切換到「電腦的邏輯」,體驗什麼叫做精確的指令。

1. 什麼是「死腦筋」?(Literal Interpretation)

如果我對你說:「請走過那扇門。」你會怎麼做?

你一定會先伸手轉開門把,把門推開,然後走過去。這是人類的「常識」。

但如果你對一個沒有經過特殊設定的機器人說:「走過那扇門。」

它可能會直直地走過去,然後「碰!」直接撞在門板上,甚至把門撞壞。

為什麼?因為你沒有給它「伸出手」、「握住門把」、「轉動」、「推開」這些指令。電腦只會從字面上乖乖照做,它不會思考,也沒辦法變通。

2. 我們要學什麼?

為了不讓機器人把家裡的門撞壞,工程師必須學會用電腦聽得懂的方式說話。接下來的活動,我們將進入兩個神祕的領域:

  1. 尋找藏寶圖的密碼(有限狀態自動機):我們會認識一種專門用來辨識單字、數字或符號的「機器」。它的名字很長,叫做「有限狀態自動機 (Finite-state automata)」。聽起來很難?別擔心,其實它就像一張特別的藏寶圖:照著圖上的路線走,只有「對的路線」才能走到寶藏。我們將用紙筆遊戲來破解它的路徑。
  2. 機器人指揮官(程式設計):我們會學習如何當一個好的指揮官。我們會用一套固定的指令當作詞彙,把它們排列組合來告訴電腦該怎麼做。排出來的這一串指令就是「程式(program)」,設計這串指令的過程就叫「程式設計(programming)」。我們將使用一種簡單到連電腦都不需要的語言,讓孩子親身體驗如何精確地控制夥伴的動作。

準備好了嗎?讓我們把大腦切換成「工程師模式」,一起來挑戰如何馴服這台速度超快、但需要你一步一步教它的超級機器吧!

延伸閱讀