請 AI 出 nested if 的題目練習 if 和 else
4 min readJun 25, 2023
以下彼得潘請 GPT 4 出一些適合初學者練習 nested if 的題目。
prompt:
出一題 python 的 nested if 練習題,用 input 讀取輸入的資料,只要用到 if 跟 else,不要用到 elif。
AI 出了三個不錯的題目。
- 角色創建。
- ATM 系統。
- 電影票價計算。
角色創建
玩家可以選擇戰士(Warrior)或法師(Mage)角色。
如果玩家選擇戰士,可以選擇兵種:劍士(Swordsman)或槍手(Spearman)。
如果玩家選擇法師,可以選擇元素:火(Fire)或冰(Ice)。
範例
請選擇角色(戰士或法師): 法師
你選擇了法師,請選擇元素(火或冰): 冰
你選擇了冰冷的冰元素法師之路!
ATM 系統
你正在開發一個簡易的ATM系統。你的系統需要根據使用者的輸入來進行不同的動作。規則如下:
- 使用者一開始要先輸入他的存款。
- 使用者可以選擇查詢餘額(’check’)或是提款(’withdraw’)。
- 如果使用者選擇查詢餘額,系統應該顯示他們的當前餘額。
- 如果使用者選擇提款,系統應該問他們要提多少錢。如果提款金額超過他們的餘額,系統應該告訴他們餘額不足。否則,系統應該更新他們的餘額並告訴他們新的餘額。
範例
請輸入你的初始存款: 1000
請輸入你想要執行的動作(1. 查詢餘額,2. 提款): 2
請輸入你想要提款的金額: 100
提款成功,你的新餘額為 900 元
電影票價計算
你正在為一家電影院設計票價計算系統,規則如下:
- 平日(Weekdays)與假日(Holidays)的票價不同。
- 若是平日,學生(Student)票價為 80 元,一般成人(Adult)票價為 100 元。
- 若是假日,學生票價為 100 元,一般成人票價為 120 元。
請根據使用者的輸入進行適當的判斷和計算票價。
範例
請輸入日子類型(1. 平日,2. 假日): 1
請輸入人員類型(1. 學生,2. 成人): 1
票價為 80 元
解答
- 角色創建系統
character = input("請選擇角色(戰士或法師): ")
if character == "戰士":
sub_type = input("你選擇了戰士,請選擇兵種(劍士或槍手): ")
if sub_type == "劍士":
print("你選擇了英勇的劍士之路!")
else:
print("你選擇了堅強的槍手之路!")
else:
sub_type = input("你選擇了法師,請選擇元素(火或冰): ")
if sub_type == "火":
print("你選擇了熾熱的火元素法師之路!")
else:
print("你選擇了冰冷的冰元素法師之路!")
- ATM 系統
balance = int(input("請輸入你的初始存款: ")) # 讓使用者輸入他們的初始存款
action = input("請輸入你想要執行的動作(1. 查詢餘額,2. 提款): ")
if action == "1":
print(f"你的餘額為 {balance} 元")
else:
withdraw_amount = int(input("請輸入你想要提款的金額: "))
if withdraw_amount > balance:
print("餘額不足!")
else:
balance = balance - withdraw_amount
print(f"提款成功,你的新餘額為 {balance} 元")
- 電影票價計算
day_type = input("請輸入日子類型(1. 平日,2. 假日):")
person_type = input("請輸入人員類型(1. 學生,2. 成人)")
if day_type == "1":
if person_type == "1":
print("票價為 80 元")
else:
print("票價為 100 元")
else:
if person_type == "學生":
print("票價為 100 元")
else:
print("票價為 120 元")