编写程序,输入人数n,输出每人平均分得多少元钱(假设有100元钱,结果保留2位小数)。如果发生ZeroDivisionError错误,则输出Error0;如果发生ValueError, 则输出Error1,其他错误输出Err0r2。最后无论是否发生异常,都输出over。
时间: 2024-02-21 12:56:33 浏览: 29
好的,以下是 Python 的代码实现:
```python
try:
n = int(input("请输入人数:"))
avg_money = round(100 / n, 2)
print("每人平均分得 %.2f 元钱。" % avg_money)
except ZeroDivisionError:
print("Error0")
except ValueError:
print("Error1")
except Exception:
print("Error2")
finally:
print("over")
```
解释一下代码的实现思路:
- 与上一个问题中的实现思路相同,先输入人数 `n`,计算出每人平均分得的金额,并输出结果。
- 如果发生 `ZeroDivisionError` 异常,输出 "Error0"。
- 如果发生 `ValueError` 异常,输出 "Error1"。
- 如果发生其他异常,则输出 "Error2"。
- 最后无论是否发生异常,都会输出 "over",表示程序结束。
相关问题
编写Python 程序,输入人数n,输出每人平均分得多少元钱(假设有100元钱,结果保留2位小数)。如果发生异常,则输出InputError
好的,下面是代码实现:
```python
try:
n = int(input("请输入人数:"))
if n <= 0:
raise ValueError
avg = 100 / n
print("每人平均分得%.2f元钱" % avg)
except ValueError:
print("InputError")
```
程序会先尝试将输入的人数转换成整数,如果输入的是非整数或者小于等于0的数,会抛出`ValueError`异常。如果没有发生异常,就计算出每人平均分得的钱数,并且使用字符串格式化输出结果,保留2位小数。如果发生异常,就直接输出`InputError`。
编写程序,输入人数n,输出每人平均分得多少元钱(假设有100元,结果保留2位小数)。如果发生异常,则输出InputError。要求:用try语句处理异常。
好的,以下是Python代码实现:
```python
try:
n = int(input("请输入人数:"))
avg_money = round(100 / n, 2)
print("每人平均分得:", avg_money, "元")
except (ValueError, ZeroDivisionError):
print("InputError")
```
首先利用`int()`函数将输入的字符串转换为整数类型,如果输入的不是整数,则会抛出`ValueError`异常,在`except`语句块中捕获该异常并输出"InputError"。如果输入的是整数,则计算每人平均分得的钱数,并使用`round()`函数保留2位小数,最后输出结果。注意,还需要考虑到分母为0的情况,这时会抛出`ZeroDivisionError`异常,也需要在`except`语句块中捕获。