从键盘输入两个数,进行相除,显示商和余数。当输入串中含有非数字时或除数为0时,通过异常处理机制,使程序能正确运行,输入两个数字,用英文逗号分隔,不需要给出提示性输出,即input()函数不要有任何参数,输出表示这两个数字的除法算式,结果包含商和余数,
时间: 2023-12-02 10:06:41 浏览: 150
在Python中获取两数相除的商和余数方法
好的,以下是代码示例:
```python
try:
# 获取用户输入的两个数字
num1, num2 = input().split(',')
num1 = int(num1)
num2 = int(num2)
# 判断除数是否为0
if num2 == 0:
raise ZeroDivisionError('除数不能为0!')
# 计算商和余数
quotient = num1 // num2
remainder = num1 % num2
# 输出结果
print('{} / {} = {}, 余{}'.format(num1, num2, quotient, remainder))
except ValueError:
print('输入的字符串中含有非数字!')
except ZeroDivisionError as e:
print(e)
```
在程序中,首先使用`input()`函数获取用户输入的字符串,并使用`split()`方法将其拆分成两个数字。然后使用`int()`函数将这两个数字转换为整数类型。接着判断除数是否为0,如果是则抛出`ZeroDivisionError`异常,并将异常信息作为参数传递。如果用户输入的字符串中含有非数字,就会抛出`ValueError`异常,并进行处理。最后使用`//`运算符计算商,使用`%`运算符计算余数。最终使用`print()`函数将结果输出。
阅读全文