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进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。