输入一个八位的正整数表示日期输出格式是二019年的一前输出yes不是或者日期非法输出no
时间: 2024-09-07 14:01:05 浏览: 44
C++初学者之根据输入的任何一个正整数,输出可能被表示的连续正整数
5星 · 资源好评率100%
这个程序的需求是接收一个8位的正整数,通常用于表示年份(因为如果是日历日期,前面还需要月份和日子信息,但这题只提到了年份)。如果输入的数字能转换成2019年的形式(即2019年前的某一年),则输出"Yes";如果输入的是2019年之后的数字或者不符合正整数的要求,则输出"No",并表明日期非法。
例如,对于输入如1900这样的8位数,由于它是2019年前的有效年份,会输出"Yes";而像2020、8765这样的数字因为不是2019年之前的,或者非正整数,将输出"No"。
要实现这个功能,你需要编写一段代码来检查输入的合法性,并根据条件进行判断。以下是Python的一个简单示例:
```python
def check_date(input_num):
if not input_num.isdigit() or len(str(input_num)) != 8 or int(input_num) > 2019:
return "No, date is illegal."
elif int(input_num) < 2019:
return "Yes"
else:
return "No"
# 测试
print(check_date(1900)) # 输出:"Yes"
print(check_date(2020)) # 输出:"No, date is illegal."
```
阅读全文