### wk04_0928_判斷式 邱冠誠 課堂程式練習 條件 : 關係(比較)運算式 or 邏輯運算式 1.單向 2.雙向 3.多向 4.巢狀 ```python 3.1 Python 程式碼縮排 Python 程式碼縮排格式 絕對不要混用Tab鍵和空白鍵 3.2 判斷式 程式流程控制 判斷式 迴圈 單向判斷式 (if...) 雙向判斷式 (if...else) 多向判斷式 (if...elif...else) 巢狀判斷式 ``` ```python sunny = "Y" if sunny == "Y": print ("我們出去玩吧") ``` 我們出去玩吧 ```python sunny = "N" if sunny == "Y": print ("我們出去玩吧") else : print("懶") ``` 懶 ### 範例 1. 密碼輸入判斷 \<password1> 2. 進階密碼判斷 \<password2> 3. 判斷成績等第 \<grade> 4. 百貨公司折扣戰 \<discount> ```python password = 1234 usr_pwd = int(input()) if usr_pwd == password: ans = "welcome" else : ans = "error" print (ans) ``` 1234 welcome ```python score = int(input()) if(score >= 90): grade = "A" elif(score >= 80): grade = "B" elif(score >= 70): grade = "C" elif(score >= 60): grade = "D" else : grade = "F" print (grade) ``` 45 F ```python now_month = int(input()) if now_month >= 2 and now_month <= 4: season = "春" elif now_month >= 5 and now_month <= 7: season = "夏" elif now_month >= 8 and now_month <= 10: season = "秋" elif now_month == 11 or now_month == 12 or now_month == 1: season = "冬" else : season = "白癡" print (season) ``` 13 白癡 ```python what_year = int(input()) if what_year % 100 == 0: if what_year % 400 == 0: result = "閏年" else: result = "平年" else: if what_year % 4 == 0: result = "閏年" else: result = "平年" print (result) ``` 2004 閏年 ```python ww = int(input()) if ww >= 100000: ans = ww*0.8 elif ww >=50000: ans = ww*0.85 elif ww >=30000: ans = ww*0.9 elif ww >=10000: ans = ww*0.95 else : ans = ww print(ans) ``` 50000 42500.0 ( A ) 1. Python 語言以下列那一個符號及縮排來表示程式區塊? (A)「:」 (B)「!」 (C)「#」 (D)「\」 ( B ) 2. 「if 條件式:」的敘述中,下列那一項正確? (A) 當條件式為 False 時,就會執行程式區塊的敘述。 (B) 當條件式為 True 時,就會執行程式區塊的敘述。 (C) 當條件式改變時,就會執行程式區塊的敘述。 (D) 當發生錯誤時,就會執行程式區塊的敘述。 ( C ) 3. 「if…elif…else」條件式中,如果所有條件式都是 False,則執行下列那一程式區塊? (A) if (B) elif (C) else (D)不會執行程式區塊的敘述 ( C ) 4. 「if …else…」條件式的敘述中,下列那一項正確? (A) 條件式只可使用關係運算式。 (B) 條件式只可使用邏輯運算式。 (C) 當條件可以是關係運算式,也可以是邏輯運算式。 (D) 以上皆不正確。 ( B ) 5. 變數 a 的值為 3,執行下列程式後顯示的結果為何? if (a==5): print("1",end="") print("2",end="") (A)1 (B) 2 (C) 12 (D) 不顯示任何內容 ( A ) 6. 變數 a 的值為 5,執行下列程式後顯示的結果為何? if (a==5): print("1",end="") else: print("2",end="") (A) 1 (B) 2 (C) 12 (D) 不顯示任何內容 ( C ) 7. 變數 a 的值為 4,執行下列程式後顯示的結果為何? if (a==5): print("1",end="") elif (a!=4): print("2",end="") else: print("3",end="")") (A) 1 (B) 2 (C) 3 (D) 123 ( C ) 8. 變數 a 的值為 20000,執行下列程式後顯示的結果為何? if (a >= 10000): if (a >= 100000): print(a * 0.5, end=" 元\n") elif (a >= 50000): print(a * 0.8, end=" 元\n") else: print(a * 0.9, end=" 元\n") else: print(a, end=" 元\n") (A) 10000.0 元 (B) 16000.0 元 (C) 18000.0 元 (D) 20000.0 元 ( A ) 9. 變數 a = 3、b=7,執行下列程式後顯示的結果為何? if (a>5 or b>5): print(a) else: print(b) (A) 3 (B) 7 (C) 37 (D) 不顯示任何內容 ( B ) 10. 變數 a = 3、b=7,執行下列程式後顯示的結果為何? if (a>5 and b>5): print(a) else: print(b) (A) 3 (B) 7 (C) 37 (D) 不顯示任何內容 ```python a = 5 if (a==5): print("1",end="") else: print("2",end="") ``` 1 ```python a = 6 if (a==5): print("1",end="") elif (a!=4): print("2",end="") else: print("3",end="") ``` 2 ```python a = 20000 if (a >= 10000): if (a >= 100000): print(a * 0.5, end=" 元\n") elif (a >= 50000): print(a * 0.8, end=" 元\n") else: print(a * 0.9, end=" 元\n") else: print(a, end=" 元\n") ``` 18000.0 元 ```python a = 3 b = 7 if (a>5 or b>5): print(a) else: print(b) ``` 3 ```python a = 3 b = 7 if (a>5 and b>5): print(a) else: print(b) ``` 7 ```python ```