2023年为平年,请设计一个Python程序,让用户输入[1,365]之间的数字,打印出Day of Year为该数字的月份和日期
时间: 2024-03-07 21:50:01 浏览: 49
好的,下面是一个可以实现该功能的Python程序:
```python
day_of_year = int(input("请输入1到365之间的数字:"))
if day_of_year < 1 or day_of_year > 365:
print("输入的数字不在1到365之间")
else:
# 判断月份和日期
if day_of_year <= 31:
month = 1
date = day_of_year
elif day_of_year <= 59:
month = 2
date = day_of_year - 31
elif day_of_year <= 90:
month = 3
date = day_of_year - 59
elif day_of_year <= 120:
month = 4
date = day_of_year - 90
elif day_of_year <= 151:
month = 5
date = day_of_year - 120
elif day_of_year <= 181:
month = 6
date = day_of_year - 151
elif day_of_year <= 212:
month = 7
date = day_of_year - 181
elif day_of_year <= 243:
month = 8
date = day_of_year - 212
elif day_of_year <= 273:
month = 9
date = day_of_year - 243
elif day_of_year <= 304:
month = 10
date = day_of_year - 273
elif day_of_year <= 334:
month = 11
date = day_of_year - 304
else:
month = 12
date = day_of_year - 334
print("Day of Year为{}的日期是{:02d}-{:02d}".format(day_of_year, month, date))
```
程序会提示用户输入一个整数,然后判断该数字是否在1到365之间,如果不在则提示输入错误,否则根据Day of Year的定义来判断月份和日期,并将结果打印出来。注意,这个程序假设2023年为平年,因此Day of Year最大为365。如果是闰年则Day of Year最大为366,需要做出相应的修改。