功能要求
編寫一個控制台應用程序,從鍵盤上輸入年份,輸出該年份是否為閏年。說明:閏年的判斷規則為,年份能被4整除但不能被100整除的年份,或者能被400整除的年份。
實例代碼
year = int(input("請輸入年份:"))
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
print("%d年是閏年"%year)
else:
print("%d年不是閏年"%year)
運行結果
輸入“2020”後,year=2020,year % 4 = 0,因此year % 4 == 0結果為True,year % 100 = 20,因此year % 100 != 0結果為True,所以(year % 4 == 0 and year % 100 != 0)結果也為True,最終(year % 4 == 0 and year % 100 != 0) or (year % 400 == 0)結果也為True,因此2020是閏年。
輸入“2021”後,year=2021,year % 4 = 1,因此year % 4 == 0結果為False,所以(year % 4 == 0 and year % 100 != 0)結果也為False,year % 400 = 21,因此year % 400 == 0結果為False,最終(year % 4 == 0 and year % 100 != 0) or (year % 400 == 0)結果也為False,因此2021不是閏年。
知識說明
and運算稱為邏輯與運算,表達式的形式為“表達式1 and 表達式2”,當“表達式1”或“表達式2”中有一個為False,則整個表達式的結果為False,隻有當“表達式1”和“表達式2”的結果都為True時,整個表達式的結果為True。即:True and False = False;False and True = False;False and False = False;True and True = True。
or運算稱為邏輯或運算,表達式的形式為“表達式1 or 表達式2”,當“表達式1”或“表達式2”中有一個為True,則整個表達式的結果為True,隻有當“表達式1”和“表達式2”的結果都為False時,整個表達式的結果為False。即:True or False = True;False or True = True;False or False = False;True or True = True。
year % 4 == 0:判斷year除以4的餘數是否等于0,即判斷年份是否能被4整除。
year % 100 != 0:判斷year除以100的餘數是否不等于0,即判斷年份不能被100整除。
year % 4 == 0 and year % 100 != 0:判斷年份能被4整除,但不能被100整除。
year % 400 == 0:判斷year除以400的餘數等于0,即判斷年份是否能被100整除。
(year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):判斷閏年的完整條件,即年份能被4整除且不能被100整除,或年份能被400整除。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!