请你编写函数,根据所给年月日,计算出该日期是该年的第几天(注意考虑闰年),满足以下两种情况之一的为闰年:1.年份是四的倍数且不是一百的倍数。2.年份是四百的倍数。 【输入形式】 输入年月日,以空格隔开。
时间: 2024-03-17 22:47:07 浏览: 69
好的,以下是 Python 代码实现:
```python
def is_leap_year(year):
"""
判断是否为闰年
"""
if year % 400 == 0:
return True
elif year % 100 == 0:
return False
elif year % 4 == 0:
return True
else:
return False
def day_of_year(year, month, day):
"""
计算该日期是该年的第几天
"""
days_of_month = [
31, 28 if not is_leap_year(year) else 29, 31, 30, 31, 30,
31, 31, 30, 31, 30, 31
]
days = 0
for i in range(month - 1):
days += days_of_month[i]
days += day
if is_leap_year(year) and month > 2:
days += 1
return days
# 测试
year, month, day = map(int, input().split())
print(day_of_year(year, month, day))
```
输入格式示例:`2022 2 28`,输出为该日期是该年的第几天。
阅读全文