解题思路:
这道题理解起来不难,但是有两个细节要尤其注意。
①开始我们要以浮点数读取所给的值,得出运算结果a+bi后,如果a和b的值是整数而不是小数,那么在输出时就要以整数的形式输出。
②还有一个情况是题目中所说的运算异常的情况,这个情况是针对除法运算的,要保证除数不能为零,如果为零则输出error。
注意事项:
参考代码:
def f(s): a1 = float(s[0]) b1 = float(s[1]) ope = s[2] a2 = float(s[3]) b2 = float(s[4]) a3 = 0 b3 = 0 if ope == '+': a3 = a1 + a2 b3 = b1 + b2 elif ope == '-': a3 = a1 - a2 b3 = b1 - b2 elif ope == '*': a3 = a1*a2 - b1*b2 b3 = a1*b2 + a2*b1 elif ope == '/': mod = a2**2 + b2**2 try: a3 = (a1*a2 + b1*b2) / mod b3 = (a2*b1 - a1*b2) / mod except: return 'error' if a3 - int(a3) == 0: a3 = int(a3) if b3 - int(b3) == 0: b3 = int(b3) if b3 < 0: return '{}{}i'.format(a3,b3) elif b3 > 0: return '{}+{}i'.format(a3,b3) if __name__ == '__main__': s = [i for i in input().strip().split()] print(f(s))
0.0分
1 人评分
WU-输出九九乘法表 (C++代码)浏览:1665 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:625 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:636 |
用筛法求之N内的素数。 (C语言代码)浏览:664 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:668 |
分糖果 (C语言代码)浏览:912 |
输入输出格式练习 (C语言代码)浏览:845 |
盐水的故事 (C语言代码)浏览:1524 |
小O的乘积 (C语言代码)浏览:1009 |
A+B for Input-Output Practice (III) (C语言代码)浏览:420 |