Python编写程序完成以下要求:从键盘输入两个数,进行相除,显示商和余数。当输入串中含有非数字时或除数为0时,通过异常处理机制,使程序能正确运行。
时间: 2023-12-31 08:03:29 浏览: 93
下面是Python程序实现:
```python
try:
# 从键盘输入两个数
num1 = float(input("请输入被除数:"))
num2 = float(input("请输入除数:"))
# 进行相除,显示商和余数
result = num1 / num2
remainder = num1 % num2
print("商为:", result)
print("余数为:", remainder)
except ZeroDivisionError:
# 除数为0时,捕获 ZeroDivisionError 异常
print("除数不能为0,请重新输入!")
except ValueError:
# 输入串中含有非数字时,捕获 ValueError 异常
print("输入格式不正确,请重新输入!")
```
程序运行过程如下:
```
请输入被除数:12.5
请输入除数:2.5
商为: 5.0
余数为: 0.0
```
```
请输入被除数:18
请输入除数:0
除数不能为0,请重新输入!
```
```
请输入被除数:abc
输入格式不正确,请重新输入!
```
相关问题
python实现编写程序完成以下要求:从键盘输入两个数,进行相除,显示商和余数。当输入串中含有非数字时或除数为0时,通过异常处理机制,使程序能正确运行。
好的,以下是实现该功能的 Python 代码:
```python
try:
num1 = int(input("请输入被除数:"))
num2 = int(input("请输入除数:"))
result = num1 / num2
remainder = num1 % num2
print("商为:", result)
print("余数为:", remainder)
except ValueError:
print("输入的值必须为数字!")
except ZeroDivisionError:
print("除数不能为0!")
```
程序中使用了 `try...except` 异常处理机制,如果输入的值不是数字,会抛出 `ValueError` 异常;如果除数为0,会抛出 `ZeroDivisionError` 异常。在 `try` 代码块中,我们首先通过 `input` 函数从键盘读取两个整数,然后计算商和余数,并输出结果。如果出现异常,程序会跳转到对应的 `except` 代码块,输出相应的错误提示信息。
输入样例3: 36,abc 输出样例3: ValueError,输出表示这两个数字的除法算式,结果包含商和余数,输入两个数字,用英文逗号分隔,不需要给出提示性输出,python编写程序完成以下要求:从键盘输入两个数,进行相除,显示商和余数。当输入串中含有非数字时或除数为0时,通过异常处理机制,使程序能正确运行
```python
try:
a, b = input().split(',')
a = int(a)
b = int(b)
if b == 0:
raise ValueError
div, mod = divmod(a, b)
print(f'{a}/{b}={div}...{mod}')
except ValueError:
print('ValueError,输出表示这两个数字的除法算式,结果包含商和余数')
except:
print('其他异常')
```
阅读全文