要求用户从键盘输入一系列数据,预期是包含整型数值的。第一次输入的是数值总数量,如果数据项比预期的多或者少,抛出一个包含合适信息的RuntimeError异常;如果数据不是整型数值,抛出valueError异常。 输入格式: 一系列数据,第一个数据表示数值总数量,回车换行输入下一个数据,直接回车换行表示输入结束。 输出格式: 输入正确时输出数据求和结果,例如:"The sum is 6." 数据项比预期的多或者少,输出"Error: data quatity invalid." 数据不是整型数值,输出"Error: input contents invalid."
时间: 2023-06-11 13:06:36 浏览: 127
输入及数据类型转换(Python)
下面是一个Python的实现代码,可以实现上述功能:
```python
try:
n = int(input()) # 读取数值总数量
data = []
for i in range(n):
val = input()
if val == '': # 输入结束
break
try:
data.append(int(val)) # 将输入转换为整型数值并添加到列表中
except ValueError:
raise ValueError('Error: input contents invalid.')
if len(data) != n:
raise RuntimeError('Error: data quatity invalid.')
print('The sum is {}.'.format(sum(data)))
except Exception as e:
print(e)
```
如果你输入的数据格式符合要求,那么程序会输出数据求和的结果,例如:
```
4
1
2
3
4
The sum is 10.
```
如果输入的数据项比预期的多或者少,程序会输出错误信息:
```
3
1
2
Error: data quatity invalid.
```
如果输入的数据不是整型数值,程序会输出错误信息:
```
3
1
2
a
Error: input contents invalid.
```
阅读全文