python3.4编写程序完成以下要求:从键盘输入两个数,进行相除,显示商和余数。当输入串中含有非数字时或除数为0时,通过异常处理机制,使程序能正确运行。 输入格式: 输入两个数字,用英文逗号分隔,不需要给出提示性输出,即input()函数不要有任何参数 输出格式: 输出表示这两个数字的除法算式,结果包含商和余数 输入样例1: 36,5 输出样例1: 36/5=7 remainder 1 输入样例2: 36,0 输出样例2: ZeroDivisionError 输入样例3: 36,abc 输出样例3: ValueError
时间: 2024-02-13 15:01:42 浏览: 62
以下是Python 3.4的程序代码:
```python
try:
dividend, divisor = input().split(',')
dividend = int(dividend)
divisor = int(divisor)
if divisor == 0:
raise ZeroDivisionError
quotient = dividend // divisor
remainder = dividend % divisor
print("{}/{}={} remainder {}".format(dividend, divisor, quotient, remainder))
except ValueError:
print("ValueError")
except ZeroDivisionError:
print("ZeroDivisionError")
```
与Python 3.6及以上版本的程序代码相似,我们使用`input()`函数从键盘读入两个数,并使用`split()`方法将其分别赋值给`dividend`和`divisor`变量。为了确保这两个变量都是整数,我们在第5、6行使用`int()`函数进行类型转换。如果用户输入的除数为0,则程序通过`raise`语句抛出一个`ZeroDivisionError`异常。接下来,我们使用`//`和`%`运算符计算商和余数,并使用`print()`函数输出结果。由于Python 3.4中的`print()`函数不支持格式化字符串,因此我们使用`format()`方法格式化输出。如果用户输入的除数不是数字,则程序会抛出一个`ValueError`异常。最后,我们使用`try`和`except`语句对可能出现的异常进行处理,并输出相应的错误信息。
阅读全文