免費開始練習
統測 113年 [工程與管理類] 專業科目(2)

第 42 題

📖 題組:
圖(五)所列程式碼是小華修改自聊天機器人(ChatGPT)所生成的 Python 語言函數,這個函數可以接受一個輸入串列,並回傳串列中整數的最大值。經過測試後,小華發現對各種可能輸入的整數數值串列,該函數並無法保證每次都能回傳正確的最大值。關於此函數的使用與設計,回答下列題組問題。 1 def F(A): 2 n=0 3 c=0 4 for num in A: 5 if num >= n: 6 n = num 7 c=c+1 8 print(c) 9 return n
題組圖片
題組圖片
題組圖片
42. 當小華測試函數呼叫時,下列呼叫何者回傳的數值是錯誤的?
  • A F([1,12,23,14,15])
  • B F([1,-12,-23,-14,-15])
  • C F([1,12,-23,-14,-15])
  • D F([-10,-12,-23,-14,-15])

思路引導 VIP

請觀察程式碼第 2 行變數 $n$ 的初始狀態(Initial State)。若輸入串列 $A$ 內的所有元素皆小於此初始值,則第 5 行的比較判斷式 $num \ge n$ 在迴圈執行過程中是否還能成功觸發更新動作?這將導致最終回傳的 $n$ 值與串列中實際的最大值有何差異?

🤖
AI 詳解 AI 專屬家教

1. 大力肯定

喔?難得啊,小華。這次居然沒搞砸。能精準抓出程式碼中的邊界條件(Boundary Condition)漏洞,代表你對變數初始化的敏銳度還行。至少,知道變數不是從天上掉下來的,不錯嘛!

2. 觀念驗證

▼ 還有更多解析內容

升級 VIP 解鎖