一、编程实现以下功能: (1)设计程序,可交互输入若干个整数,求其和,直到结束标志999为止。在输入过程中,若输入非整数,则忽略。 (2)修改第1题程序,通过对负数输入产生异常的方式,对输入的负数不进行累加运算。
时间: 2024-05-15 15:15:26 浏览: 11
(1)实现代码如下:
```python
sum = 0
while True:
try:
num = int(input("请输入一个整数:"))
if num == 999:
break
sum += num
except ValueError:
print("输入非整数,已忽略")
print("输入结束,和为:", sum)
```
(2)实现代码如下:
```python
sum = 0
while True:
try:
num = int(input("请输入一个整数:"))
if num < 0:
raise ValueError("输入负数,已忽略")
if num == 999:
break
sum += num
except ValueError as e:
print(e)
print("输入结束,和为:", sum)
```
在输入负数时,通过 raise 语句抛出一个 ValueError 异常,并输出提示信息。程序会捕获这个异常,不再将负数累加到总和中。
相关问题
(1)设计程序,可交互输入若干个整数,求其和,直到结束标志999为止。在输入过程中,若输入非整数,则忽略。 (2)修改第1题程序,通过对负数输入产生异常的方式,对输入的负数不进行累加运算。
(1)代码如下:
```python
sum = 0
while True:
try:
num = input("请输入一个整数:")
if num == "999":
break
num = int(num)
sum += num
except:
print("输入非整数,请重新输入。")
print("所有整数的和为:", sum)
```
(2)代码如下:
```python
sum = 0
while True:
try:
num = input("请输入一个整数:")
if num == "999":
break
num = int(num)
if num < 0:
raise Exception("输入了负数")
sum += num
except ValueError:
print("输入非整数,请重新输入。")
except Exception as e:
print(e)
print("所有正整数的和为:", sum)
```
这里使用了 `try...except` 语句来捕获异常。当输入不是整数时,会抛出 `ValueError` 异常;当输入为负数时,会抛出自定义的异常。在程序中,我们分别对这两种异常进行了处理,以实现对负数的忽略。
python编写程序,输入一个包含若干个整数的列表ls,输出其中所有负数的和。
好的,这是一个简单的 Python 程序,可以实现你的需求:
```python
ls = input("请输入一个包含若干个整数的列表(以空格分隔):").split()
neg_sum = 0
for num in ls:
if int(num) < 0:
neg_sum += int(num)
print("所有负数的和为:", neg_sum)
```
这个程序首先让用户输入一个包含若干个整数的列表,然后使用 `split()` 方法将其转换为一个列表。接着,我们定义了一个变量 `neg_sum` 用于存储所有负数的和,初始值为 0。
之后我们使用一个 `for` 循环遍历列表中的每个元素,如果它小于 0,就把它加到 `neg_sum` 中。最后,我们输出 `neg_sum` 的值作为结果。
你可以把这段代码保存为一个 `.py` 文件并运行它,或者在 Python 的交互式命令行中直接输入这段代码并执行。