3.编写程序:输入具体的年月日(输入自己的生日),输出该日期是该年的第几天。 【提示: 需要判断是否为闰年】
时间: 2023-05-29 11:07:45 浏览: 62
year = int(input("请输入年份:"))
month = int(input("请输入月份:"))
day = int(input("请输入日期:"))
# 判断是否为闰年
if year % 4 == 0 and year % 100 != 0 or year % 400 == 0:
leap_year = True
else:
leap_year = False
# 判断月份和日期是否合法
if month < 1 or month > 12 or day < 1 or day > 31:
print("输入的日期不合法!")
elif month in [4, 6, 9, 11] and day > 30:
print("输入的日期不合法!")
elif month == 2:
if leap_year and day > 29:
print("输入的日期不合法!")
elif not leap_year and day > 28:
print("输入的日期不合法!")
else:
# 计算该日期是该年的第几天
days = 0
for i in range(1, month):
if i in [1, 3, 5, 7, 8, 10, 12]:
days += 31
elif i in [4, 6, 9, 11]:
days += 30
else:
if leap_year:
days += 29
else:
days += 28
days += day
print("该日期是该年的第%d天。" % days)