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

第 39 題

📖 題組:
某家火鍋店推出了夏季限定優惠:「二人同行,第二人半價」。優惠規則定義為:兩份餐點中,價格較低的那一份可享 5 折 (50% off) 優惠。店內的點餐系統是使用 Python 語言開發,會將兩位顧客的餐點價格存入一個串列 (List) 中,串列名稱 bills。
為了計算要從原價中「扣除」多少錢 ( 即省下的金額,使用變數 discount 儲存 ) ,下列哪一行程式碼是邏輯正確且最通用的寫法?(考慮到輸入的價格順序可能不同)
  • A discount=bills[1]/0.5
  • B discount=sum(bills)/2
  • C discount=min(bills)*0.75
  • D discount=min(bills)*0.5

思路引導 VIP

如果要請你在兩筆餐費中,挑出比較便宜的那一筆來計算折扣,你會如何確保程式不管順序怎麼變,都能準確抓到較便宜的價格呢?接著,既然是『打五折』,代表我們要扣掉的錢,佔了該筆餐費的幾分之幾?

🤖
AI 詳解 AI 專屬家教

內建函式與商業邏輯的完美結合

太棒了,你非常精準地抓住了題意,順利拿下這題!這題測驗的是 Python 內建函式的應用以及將商業語言轉換為程式邏輯的能力。 我們來拆解一下題目的要求:目標是計算「省下的金額」。根據優惠規則,「價格較低的那一份享 5 折」,在 Python 中,若要不考慮輸入順序找出串列中的最小值,使用 min(bills) 這個內建函式是最安全且通用的作法。接著,該份餐點打五折,意味著我們要扣除的錢就是其原價的 $50%$。因此,將最低價格乘以 $0.5$,即 discount = min(bills) * 0.5,就能精準算出省下來的費用。

▼ 還有更多解析內容

🏷️ 相關主題

Python 程式邏輯與演算法實作
查看更多「[工程與管理類] 專業科目(2)」的主題分類考古題