fre_free 2022-09-26 09:51 采纳率: 95.7%
浏览 54
已结题

我想问的都在代码里了

问题: 输入某年某月某日,判断这一天是这一年的第几天


def isLeapYear(y): # 这里用函数定义有什么好处?我想的是用if
    return (y%400==0 or (y%4==0 and y%100!=0))
DofM=[0,31,28,31,30,31,30,31,31,30,31,30] # 第一个数据为什么是0res=0
year=int(input('Year:'))
month=int(input('Month:'))
day=int(input('day:'))
if isLeapYear(year):
    DofM[2]+=1
for i in range(month):
    res+=DofM[i]
print(res+day)


  • 写回答

4条回答 默认 最新

  • 爱音斯坦牛 优质创作者: 编程框架技术领域 2022-09-26 09:56
    关注

    这是将1到11月存到了列表,列表0位就存0,因为是从下标1开始的,有帮助的话采纳一下哦!

    #判断是否是润年的函数
    def isLeapYear(y):
        if((y%400==0 or (y%4==0 and y%100!=0))):
            return True
        else:
            return False
    #把1到11月对应的天数写进列表中,列表零位存0
    months_day = [0,31,28,31,30,31,30,31,31,30,31,30]
    res = 0
    year,month,day = map(int,input("请输入年月日,中间用逗号隔开:").split(","))
    if isLeapYear(year):
        months_day[2] += 1
    for i in range(1,month):
        res += months_day[i]
    print(res+day)
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月28日
  • 已采纳回答 9月26日
  • 创建了问题 9月26日