请编写一个程序。输入年月日。输出他是 2021 年的哪一天
时间: 2025-01-06 12:53:25 浏览: 4
下面是一个简单的Python程序,用于计算给定日期在2021年的对应天数:
```python
def day_in_2021(year, month, day):
# 判断输入是否合法
if not(1 <= month <= 12 and 1 <= day <= 31):
return "输入的月份或日期无效"
# 定义2021年的每个月的天数
days_in_month = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
# 如果是闰年且2月有29天
if year == 2021 and ((year % 4 == 0 and year % 100 != 0) or year % 400 == 0):
days_in_month[1] = 29
# 计算总天数
total_days = sum(days_in_month[:month]) + day
# 返回结果
return f"{day}/{month}/{year} 在2021年共 {total_days} 天"
# 示例输入
year = 2021
month = int(input("请输入月份(1-12): "))
day = int(input("请输入日期(1-{}): ".format(days_in_month[month-1])))
print(day_in_2021(year, month, day))
```
这个程序会提示用户输入年份、月份和日期,然后根据2021年的规则(平年2月28天,闰年2月29天)计算该日期所在的总天数。如果输入的日期超出当月实际天数,程序会返回错误信息。请注意,因为闰年的判断条件,这个程序假设2021年不是闰年。如果需要考虑所有情况,可以使用更复杂的判断逻辑或外部库如`calendar`模块。
阅读全文