歡迎來到智能程式的世界!

你有沒有想過,電子遊戲是怎麼知道你的「生命值」已經耗盡,或者微波爐是如何一直轉動直到計時器歸零?電腦不只是從頭到尾直線執行指令,它們還能作出決策並重複執行任務。這就是所謂的 流程控制 (Flow Control)循環 (Looping)

在這一章中,我們將學習如何賦予程式「大腦」,讓它們能對不同的情況作出反應。這是 程式編寫概念 (Programming Concepts) 的核心部分,是在我們學過的變量 (variables) 和簡單數學運算的基礎上進一步發展的。

1. 作出決策:流程控制

想像你正站在一個十字路口,你會根據天氣選擇不同的路徑。在程式編寫中,流程控制 讓程式決定遵循哪一條代碼「路徑」。這通常是透過檢查一個陳述是 真 (True) 還是 假 (False) 來實現的。

比較運算符 (Relational Operators)

為了作出決策,我們會使用名為 比較運算符 的特殊符號來比較兩個數值。以下是你需要掌握的符號:

\(>\) :大於(例如:\(5 > 3\) 為真)
\(>=\) :大於或等於
\(<\) :小於
\(<=\) :小於或等於
\(=\) :等於(檢查兩者是否相同)
\(<>\) :不等於(檢查兩者是否不同)

例子:如果玩家的分數是 \(>= 100\),程式可能會顯示「你贏了!」;如果分數是 \(< 100\),則可能會顯示「繼續努力!」。

邏輯運算符 (Logical Operators)

有時候,單一的比較並不夠。我們會使用 邏輯運算符 來組合多個條件:

AND (與):兩個條件都必須為真。(例如:如果今天是星期六 而且 天氣晴朗,我就會去海灘。)

OR (或):至少有一個條件為真。(例如:如果我有優惠券 或者 今天是減價日,我就能享有折扣。)

NOT (非):這會反轉結果。它讓「真」變成「假」,「假」變成「真」。

快速複習:將流程控制想像成一個「過濾器」。只有符合你規則的數據才能進入下一步!

2. 重複執行:循環 (Looping)

循環(也稱為迭代 iteration)是指程式重複執行一組指令。我們不必將同一段代碼重複寫 100 次,而是告訴電腦不斷「循環」,直到滿足某個條件為止。

日常生活中的循環例子

我們在日常生活中經常不自覺地使用循環!

  • 吃東西:當你感到肚餓時,就多吃一口。(當你吃飽了,循環就會停止!)
  • 鬧鐘:鬧鐘會每隔一分鐘響一次,直到你按下「延時」或「關閉」按鈕。
  • 學校鐘聲:鐘聲會響起固定的秒數,然後停止。
  • 體育課:老師可能會說:「繞球場跑 5 圈。」你會記錄自己跑了多少圈,直到跑夠 5 圈為止。

學習重點:循環能節省時間,並讓程式變得更簡潔、更有效率。

3. 實踐應用

在你的編程環境中,你可以利用這些概念來製作既有趣又實用的工具。以下是兩個你可能會製作的經典例子:

A. 骰子模擬器

電腦不能像我們一樣投擲實體骰子,但它可以使用 隨機數生成器 (Random Number Generator) 來選取一個介乎 \(1\) 到 \(6\) 之間的整數。為了增加真實感,我們可以使用循環讓用戶不斷「擲骰」,直到他們選擇退出為止。

B. 算術測驗

想像一個會問你數學題的程式。它會使用 流程控制 來檢查你的答案:

1. 程式生成兩個隨機數。
2. 它會問:「\(5 + 7\) 是多少?」
3. 它接收你從鍵盤輸入的 輸入值 (input)
4. 決策時刻:如果你的答案 \( = 12\),它會顯示「答對了!」
5. 如果你的答案 \( <> 12\),它會顯示「再試一次!」

如果起初覺得有點困難,請不要擔心! 大多數同學發現,練習編寫簡單的測驗程式,是觀察「等於」(\(=\)) 和「不等於」(\(<>\)) 運算符在現實中運作的最佳方法。

4. 流程控制與人工智能 (AI)

你知道嗎? 人工智能 (AI) 同樣依賴算法 (algorithms) 和決策過程。雖然 AI 可以處理海量數據(如圖像或語音),但它仍然使用基本原理來進行「推理」和預測。AI 的表現很大程度上取決於其 算法(即規則和流程控制)以及它所接收的 數據

需要避免的常見錯誤:

- 「無限循環」(Infinite Loop):當「停止」條件永遠無法達成時,就會發生這種情況。程式會一直運行下去,直到當機或你強制停止它為止!
- 混淆 \(>\) 與 \(<\):務必從左到右閱讀你的比較運算。\(5 > 3\) 代表「5 大於 3」。

總結清單

[ ] 我是否認識 6 種比較運算符 (\(>\), \(>=\), \(<\), \(<=\), \(=\), \(<>\))?
[ ] 我能否解釋 AND 和 OR 之間的區別?
[ ] 我能否舉出一個日常生活中循環的例子?
[ ] 我是否明白流程控制能幫助程式作出決策?