|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
题目一
题目内容:
编写程序完成以下要求:从键盘输入两个数,进行相除,显示商和余数。当输入串中含有非数字时或除数为0时,通过异常处理机制,使程序能正确运行。
输入格式:
输入两个数字,用英文逗号分隔,不需要给出提示性输出,即input()函数不要有任何参数
输出格式:
输出表示这两个数字的除法算式,结果包含商和余数
输入样例1:
36,5
输出样例1:
36/5=7余1
输入样例2:
36,0
输出样例2:
异常:除数为0
输入样例3:
36,abc
输出样例3:
异常:输入的数据有误
我自己的代码如下
- a=input()
- c,d=a.split(',')
- try:
- c=float(c)
- d=float(d)
- e=int(c//d)
- f=int(c%d)
- print('{0}/{1}={2}余{3}'.format(int(c),int(d),e,f))
- except (ValueError,ZeroDivisionError):
- if d==0:
- print('异常:除数为0')
- else:
- print('异常:输入的数据有误')
复制代码
试试这个:
- a=input()
- try:
- c,d=a.split(',')
- c=int(c)
- d=int(d)
- print('{0}/{1}={2}余{3}'.format(c,d,int((c-c%d)/d),c%d))
- except (BaseException,ZeroDivisionError):
- if d==0:
- print('异常:除数为0')
- else:
- print('异常:输入的数据有误')
复制代码
还有,你出错的数据是什么?
|
评分
-
查看全部评分
|