编写函数,形式参数为代表年月日的三个整数,函数的功能为返回该日期是否为合法日期。主函数中输入一个日期的年月日三个整数,若为合法日期,输出YES,否则输出NO。 输入格式: 两个整数,空格分隔,分别表示年和月。 输出格式: 合法输出“YES”,不合法输出“NO” 输入样例1: 2023 3 21 输出样例1: YES
时间: 2024-03-24 14:40:17 浏览: 8
好的,以下是符合您要求的 Python 代码:
```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
# 主函数
if __name__ == '__main__':
year, month, day = map(int, input().split())
if is_valid_date(year, month, day):
print('YES')
else:
print('NO')
```
您可以将以上代码保存到一个名为 `main.py` 的文件中,然后在命令行中运行 `python main.py` 来执行程序。程序会提示您输入一个日期的年月日三个整数,您可以输入类似“2023 3 21”的字符串,然后按下回车键,程序会输出相应的结果。