| 
 | 
 
 
发表于 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, '天')
 
  复制代码 |   
 
 
 
 |