|
发表于 2018-1-25 18:11:54
|
显示全部楼层
- '''题目:输入某年某月某日,判断这一天是这一年的第几天?
- 程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于2时需考虑多加一天'''
- # 一年有12个月,其中1月、3月、5月、7月、8月、10月、12月为31天;4月、6月、9月、11月为30天;2月为28天(闰年为29天)
- # 闰年是公历中的名词,能被4整除但不能被100整除,或能被400整除的年份即为闰年。闰年366天
- str1 = input('please input a certain day of the year.eg:xxxx年xx月xx日')
- month = int(str1[5] + str1[6])
- Today = int(str1[8] + str1[9])
- year = int(str1[0] + str1[1] + str1[2] + str1[3])
- # list_month=[1,2,3,4,5,6,7,8,9,10,11,12]
- day = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30]
- r = 0
- for i in range(0, 13):
- if (month >= i+1):
- r += day[i]
- r += Today
- if (year % 400 == 0):
- print(str1, '是今年的第', r + 1, '天')
- else:
- print(str1, '是今年的第', r, '天')
复制代码 |
|