您好,登錄后才能下訂單哦!
4#題目:輸入某年某月某日,判斷這一天是這一年的第幾天?
代碼:
2 year = int(input('請輸入年份:')) 3 month = int(input('請輸入月份:')) 4 day = int(input('請輸入日期:')) 5 6 rmon = [31,29,31,30,31,30,31,31,30,31,30,31] 7 8 pmon = [31,28,31,30,31,30,31,31,30,31,30,31] 9 j = 0 10 tmp = 0 11 if ((year%4 == 0 and year%100 != 0) or year%400 == 0): 12 for i in rmon: 13 if (j < month): 14 tmp += rmon[j] 15 j += 1 16 else: 17 break 18 print('你輸入的年份是閏年,輸入的時間是這一年的第%d天'%(tmp+day)) 19 else: 20 for i in pmon: 21 if (j < month): 22 tmp += pmon[j] 23 j += 1 24 else: 25 break 26 print('你輸入的年份是平年,輸入的時間是這一年的第%d天'%(tmp+day))
運行結果:
[root@HK code_100]# python code_4.py 請輸入年份:2016 請輸入月份:4 請輸入日期:20 你輸入的年份是閏年,輸入的時間是這一年的第141天 [root@HK code_100]# [root@HK code_100]# python code_4.py 請輸入年份:2015 請輸入月份:4 請輸入日期:20 你輸入的年份是平年,輸入的時間是這一年的第140天 [root@HK code_100]#
代碼解釋:
2 year = int(input('請輸入年份:')) #接收輸入的日期,并且轉換成int類型 3 month = int(input('請輸入月份:')) 4 day = int(input('請輸入日期:')) 5 6 rmon = [31,29,31,30,31,30,31,31,30,31,30,31] #閏年的每月天數 7 8 pmon = [31,28,31,30,31,30,31,31,30,31,30,31] #平年的每月天數 9 j = 0 10 tmp = 0 11 if ((year%4 == 0 and year%100 != 0) or year%400 == 0): #判斷輸入的年份為閏年 12 for i in rmon: # for循環遍歷整個rmon 13 if (j < month): #判斷累加參數j小于輸入的月份,如果j>month,沒有必要累加這個月的天數 14 tmp += rmon[j] #符合條件的月份天數累加 15 j += 1 #j=0 step為1遞增 16 else: 17 break # 當循環的月份大于輸入的月份時跳出循環 18 print('你輸入的年份是閏年,輸入的時間是這一年的第%d天'%(tmp+day)) # 格式化打印結果 19 else: 20 for i in pmon: # 與上面的代碼解釋相同,是平年的計算,差別在2月的天數 21 if (j < month): 22 tmp += pmon[j] 23 j += 1 24 else: 25 break 26 print('你輸入的年份是平年,輸入的時間是這一年的第%d天'%(tmp+day)) 27
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。