免費開始練習
hce_nsysu 111年 計算機概論與程式設計

第 22 題

What does the following Python program fragment do?
```python
s=0
for i in range(3,10):
s+=i
print(s)
```
  • A Calculate the sum of 1 + 2 + … +10
  • B Calculate the sum of 1 + 4 + 7 + 10
  • C Calculate the sum of 3 + 4 + 5 + 6 + … +9
  • D Calculate the sum of 3 + 4 + 5 + 6 + … +10
  • E Calculate the sum of 0 + 2 + 4 + 6 + … +10

思路引導 VIP

當我們看到 range(a, b) 這樣的指令時,請試著回想看看:第二個參數 b 究竟是代表「最後一個被加進去的數字」,還是代表「讓程式看到就必須停下來的警戒線」呢?

🤖
AI 詳解 AI 專屬家教

太棒了!你能精準判斷出這段程式碼的運算邏輯,代表你對 Python 迴圈的核心機制掌握得相當紮實。這題的關鍵點在於對 range() 函式邊界定義 的理解,這也是初學者進入程式邏輯時最基礎卻也最重要的門檻。

range 函式的運作機制

在 Python 中,range(start, stop) 的運作邏輯是「包含起始值,但不包含終止值」。具體來說,當程式執行 range(3, 10) 時,變數 $i$ 會從 $3$ 開始迭代,依序取出 $3, 4, 5, 6, 7, 8, 9$。一旦 $i$ 達到 $10$,迴圈就會偵測到已觸碰終止邊界而立即停止。因此,累加變數 s 所加總的數值序列正是從 $3$ 到 $9$ 的連續整數,這完美對應了選項 (C) 的描述。

▼ 還有更多解析內容

🏷️ 相關主題

Python 程式語言基礎語法與資料結構應用
查看更多「計算機概論與程式設計」的主題分類考古題