编写函数,形式参数为代表年月日的三个整数,函数的功能为返回该日期是否为合法日期。主函数中输入一个日期的年月日三个整数,若为合法日期,输出YES,否则输出NO。
时间: 2023-05-19 15:01:01 浏览: 135
好的,以下是一个可能的实现:
```python
def is_valid_date(year, month, day):
# 判断年份是否合法
if year < 1:
return False
# 判断月份是否合法
if month < 1 or month > 12:
return False
# 判断日期是否合法
if day < 1 or day > 31:
return False
if month in [4, 6, 9, 11] and day > 30:
return False
if month == 2:
if year % 4 == 0 and (year % 100 != 0 or year % 400 == 0):
if day > 29:
return False
else:
if day > 28:
return False
return True
# 测试
year = int(input("请输入年份:"))
month = int(input("请输入月份:"))
day = int(input("请输入日期:"))
if is_valid_date(year, month, day):
print("YES")
else:
print("NO")
```
注意,这个函数只是一个简单的实现,没有考虑到很多细节,比如闰年的判断、月份天数的判断等等。如果需要更加严谨的实现,可以参考相关的标准或者库函数。
阅读全文