设计一个类Complex,用于封装对复数的下列操作: 成员变量:实部real,虚部image,均为整数变量; 构造方法:无参构造方法、有参构造方法(参数2个) 成员方法:含两个复数的加、减、乘操作。 复数相加举例: (1+2i)+(3+4i)= 4 + 6i 复数相减举例: (1+2i)-(3+4i)= -2 - 2i 复数相乘举例: (1+2i)*(3+4i)= -5 + 10i 要求:对复数进行连环算术运算。
提示:如果用PYTHON语言实现,不必设计Complex类,可以使用内置的复数数据类型,完成复数的算术运算。
输入有多行。 第一行有两个整数,代表复数X的实部和虚部。 后续各行的第一个和第二个数表示复数Y的实部和虚部,第三个数表示操作符op: 1——复数X和Y相加;2——复数X和Y相减;3——复数X和Y相乘。 当输入0 0 0时,结束运算,输出结果。
输出一行。 第一行有两个整数,代表复数的实部和虚部,实部和虚部之间用1个空格分开。
1 1 3 4 2 5 2 1 2 -1 3 0 2 2 0 0 0
5 -7
结尾无空行
答案:
a,b=map(int,input().split()) x=complex(a, b) while 1: a,b,c=map(int,input().split()) y = complex(a, b) if (y==0&c==0): print(int(x.real),int(x.imag)) break if c==1: x=x+y elif c==2: x=x-y else : x=x*y
1.复数可以用使用函数 complex(real, imag)
或者是带有后缀j的浮点数来指定。比如:
>>> a = complex(2, 4) >>> b = 3 - 5j >>> a (2+4j) >>> b (3-5j) >>>
对应的实部、虚部和共轭复数可以很容易的获取。就像下面这样:
>>> a.real 2.0 >>> a.imag 4.0 >>> a.conjugate() (2-4j) >>>