## wk04_0928_判斷式 條件: 關係(比較)運算式 or 邏輯運算式 1. 單向 2. 雙向 3. 多向 4. 巢狀 ```python sunny ="N" 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 = 1234 if usr_pwd == password: ans = "weclome" else: ans = "error, please try again!" print(ans) ``` error, please try again! ```python usr_pwd == int(password) ``` True ```python # 判斷成績等第 <grade> score = 10 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) ``` F ```python # 判斷季節 #now_month = 12 now_month = int(input("what month??")) if now_month>=2 and now_month <=4: season = "spring" elif now_month >=5 and now_month<=7: season = "summer" elif now_month >=8 and now_month<=10: season = "fail" elif now_month>=11 or now_month<=1: season = "winter" else : season = "數字超過1-12範圍外" print(season) ``` what month??5 summer ## 【inclass practice】 實作5 請設計程式判斷使用者輸入的西元年是否為閏年(平年),閏年的規則是 : 西元年若是可以被100整除,又能被400整除則是閏年。 西元年若不可以被100整除,但卻能被4整除則是閏年。 ```python what_year = 1966 if what_year % 100 ==0: if what_year % 400 ==0: result = "閏年" else: result = "平年" else: if what_year % 4 ==0: result = "閏年" else: result = "平年" print(result) ``` 平年 ## 【afterclass practice】 1. 綜合演練 選擇題1-10 (需抄題在markdown cell ; 有程式碼的題目要有code cell ) 2. 教學影音 lesson 7 1. Python 語言以下列那一個符號及縮排來表示程式區塊? (A) ``` (A)「:」 (B)「!」 (C)「#」(D)「\」 ``` 2. 「if 條件式:」的敘述中,下列那一項正確? (B) ``` (A) 當條件式為 False 時,就會執行程式區塊的敘述。 (B) 當條件式為 True 時,就會執行程式區塊的敘述。 (C) 當條件式改變時,就會執行程式區塊的敘述。 (D) 當發生錯誤時,就會執行程式區塊的敘述。 ``` 3. 「if…elif…else」條件式中,如果所有條件式都是 False,則執行下列那一程式區塊? (C) ``` (A) if (B) elif (C) else (D)不會執行程式區塊的敘述 ``` 4. 「if …else…」條件式的敘述中,下列那一項正確? (C) ``` (A) 條件式只可使用關係運算式。 (B) 條件式只可使用邏輯運算式。 (C) 當條件可以是關係運算式,也可以是邏輯運算式。 (D) 以上皆不正確。 ``` 5. 變數 a 的值為 3,執行下列程式後顯示的結果為何? (B) ``` if (a==5): print("1",end="") print("2",end="") (A)1 (B) 2 (C) 12 (D) 不顯示任何內容 ```python a=3 if (a==5): print("1",end="") print("2",end="") ``` 2 6. 變數 a 的值為 5,執行下列程式後顯示的結果為何? (A) ``` if (a==5): print("1",end="") else: print("2",end="") (A) 1 (B) 2 (C) 12 (D) 不顯示任何內容 ``` ```python a=5 if (a==5): print("1",end="") else: print("2",end="") ``` 1 7. 變數 a 的值為 4,執行下列程式後顯示的結果為何? (C) ``` if (a==5): print("1",end="") elif (a!=4): print("2",end="") else: print("3",end="") (A) 1 (B) 2 (C) 3 (D) 123 ``` ```python a=4 if (a==5): print("1",end="") elif (a!=4): print("2",end="") else: print("3",end="") ``` 3 8. 變數 a 的值為 20000,執行下列程式後顯示的結果為何? (C) ``` 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 元 ``` ```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 元 9. 變數 a = 3、b=7,執行下列程式後顯示的結果為何? (A) ``` if (a>5 or b>5): print(a) else: print(b) (A) 3 (B) 7 (C) 37 (D) 不顯示任何內容 ``` ```python a=3 b=7 if (a>5 or b>5): print(a) else: print(b) ``` 3 10. 變數 a = 3、b=7,執行下列程式後顯示的結果為何? (B) ``` if (a>5 and b>5): print(a) else: print(b) (A) 3 (B) 7 (C) 37 (D) 不顯示任何內容 ``` ```python a=3 b=7 if (a>5 and b>5): print(a) else: print(b) ``` 7