编写程序实现:从键盘上输入一个年月日(以空格或回车分隔),求出该天是该年的第几天(注意判断该年是否是闰年)。 输出格式为:sum days of 2012 -5 -30 :151
时间: 2024-10-29 09:20:00 浏览: 15
EXCEL使用技巧大全:输入的技巧【会计实务操作教程】.pptx
首先,我们来编写一个简单的Python程序来实现这个功能。我们将使用内置的`input()`函数获取用户输入,然后通过一系列条件判断确定给定日期是一年中的第几天。这里假设用户输入的月份范围在1到12之间,日期范围在1到31之间。
```python
def is_leap_year(year):
if year % 4 != 0:
return False
elif year % 100 != 0:
return True
elif year % 400 != 0:
return False
else:
return True
def days_in_month(month, year):
days = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
if is_leap_year(year) and month == 2:
return 29
else:
return days[month]
def main():
input_str = input("请输入年月日(如:2012 2 29):")
try:
year, month, day = map(int, input_str.split())
if month < 1 or month > 12 or day < 1 or day > days_in_month(month, year):
print("无效的日期输入")
else:
sum_days = (year-1)*365 + sum(days_in_month(i, year) for i in range(1, month))
sum_days += day
print(f"sum days of {year} -{month} -{day} :{sum_days}")
except ValueError:
print("输入格式错误,请按照指定格式输入")
if __name__ == "__main__":
main()
```
当你运行这个程序并输入例如"2012 2 29"时,它会计算2012年2月29日是当年的第几天,并返回结果。
阅读全文