# wk04_0928_Judgmental 條件 : 關係(比較)運算式 or 邏輯運算式 單向判斷式 (if...) 雙向判斷式 (if...else) 多向判斷式 (if...elif...else) 巢狀判斷式 ## 【Inclass】 ### {綜合演練} #### 實作1 <pre> 小明出門經常忘記帶雨傘,碰到下雨就淋成落湯雞。 他的好友英倫決定幫忙他設計一個檢查是否 要帶傘的程式;如果今天會下雨, 就提醒小明"出門記得帶傘!!",讓小明從此過著幸福快樂的日子。 </pre> #單向判斷式 sunny = "Y" if sunny == "Y": print("我們出去玩吧") 我們出去玩吧 #雙向判斷式 sunny = "N" if sunny == "Y" : print("我們出去玩吧") else : print("乖乖待在家") ### {範例} 密碼輸入判斷 \ 進階密碼判斷 \ 判斷成績等第 \ 百貨公司折扣戰 \ password = "1234" usr_pwd = 1234 if usr_pwd == password : ams = "welcome!" else : ans = "error, please try again!" print(ans ) error, please try again! usr_pwd == int(password) pw = input("請輸入密碼") if pw =="1234": print("歡迎光臨") else: print("密碼錯誤") 請輸入密碼1234 歡迎光臨 #### 判斷成績等第 <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 #### 判斷季節 now_month = 5 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 = "Fall" elif now_month == 11 or now_month == 12 or now_month == 1 : season = "Winter" else : season = "數字超過1 - 12 範圍" print(season) Summer #### 判斷季節 now_month = int(input("請輸入月份:")) 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 = "Fall" elif now_month == 11 or now_month == 12 or now_month == 1 : season = "Winter" else : season = "數字超過1 - 12 範圍" print(season) 請輸入月份:5 Summer #### 實作5 <pre> 請設計程式判斷使用者輸入的西元年是否為閏年(平年),閏年的規則是 : 西元年若是可以被100整除,又能被400整除則是閏年。 西元年若不可以被100整除,但卻能被4整除則是閏年。 </pre> what_year = 2000 if what_year % 100 == 0 : if what_year %400 == 0: result = "閏年" else : result = "平年" else : if what_year % 4 == 0: result = "閏年" else: result = "平年" print(result) 閏年 money = int(input("請輸入消費金額")) if(money >= 10000): if(money >= 100000): print(money * 0.8, end="元") elif(money >= 50000): print(money * 0.85, end="元") elif(money >= 30000): print(money * 0.9, end="元") else: print(money * 0.95, end="元") else: print(money, end=" 元") 請輸入消費金額100000 80000.0 元 ## 【Afterclass practice】 {綜合演練 ch3} <pre> ( A ) 1. Python 語言以下列那一個符號及縮排來表示程式區塊? (A)「:」 (B)「!」 (C)「#」(D)「\」 </pre> <pre> ( B ) 2. 「if 條件式:」的敘述中,下列那一項正確? (A) 當條件式為 False 時,就會執行程式區塊的敘述。 (B) 當條件式為 True 時,就會執行 程式區塊的敘述。 (C) 當條件式改變時,就會執行程式區塊的敘述。 (D) 當發 生錯誤時,就會執行程式區塊的敘述。 </pre> <pre> ( C ) 3. 「if…elif…else」條件式中,如果所有條件式都是 False,則執 行下列那一程式區塊? (A) if (B) elif (C) else (D)不會執行程式區塊 的敘述 </pre> <pre> ( C ) 4. 「if …else…」條件式的敘述中,下列那一項正確? (A) 條件式只 可使用關係運算式。 (B) 條件式只可使用邏輯運算式。 (C) 當條件可以是關係 運算式,也可以是邏輯運算式。 (D) 以上皆不正確。 </pre> <pre> ( B ) 5. 變數 a 的值為 3,執行下列程式後顯示的結果為何? (A)1 (B) 2 (C) 12 (D) 不顯示任何內容 </pre> a = 3 if (a==5): print("1",end="") print("2",end="") 2 <pre> ( A ) 6. 變數 a 的值為 5,執行下列程式後顯示的結果為何? (A) 1 (B) 2 (C) 12 (D) 不顯示任何內容 </pre> a = 5 if (a==5): print("1",end="") else: print("2",end="") 1 <pre> ( A ) 6. 變數 a 的值為 5,執行下列程式後顯示的結果為何? (A) 1 (B) 2 (C) 12 (D) 不顯示任何內容 </pre> a = 5 if (a==5): print("1",end="") else: print("2",end="") 1 <pre> ( C ) 7. 變數 a 的值為 4,執行下列程式後顯示的結果為何? (A) 1 (B) 2 (C) 3 (D) 123 </pre> a = 4 if (a==5): print("1",end="") elif (a!=4): print("2",end="") else: print("3",end="") 3 <pre> ( C ) 8. 變數 a 的值為 20000,執行下列程式後顯示的結果為何? (A) 10000.0 元 (B) 16000.0 元 (C) 18000.0 元 (D) 20000.0 元 </pre> 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 元 <pre> ( A ) 9. 變數 a = 3、b=7,執行下列程式後顯示的結果為何? (A) 3 (B) 7 (C) 37 (D) 不顯示任何內容 </pre> a = 3 b = 7 if (a>5 or b>5): print(a) else: print(b) 3 <pre> ( B ) 10.變數 a = 3、b=7,執行下列程式後顯示的結果為何? (A) 3 (B) 7 (C) 37 (D) 不顯示任何內容 </pre> a = 3 b = 7 if (a>5 and b>5): print(a) else: print(b) 7