创建一个复数类 complex,以复数进行数学运算。复数具有如下格式: RealPart+ImaginaryPart*I 其中 I 为-1 的平方根。 要求如下: a. 利用浮点变量表示此类的私有数据。提供两个构造方法,一个以便在此类对象声 明时初始化;一个带缺省值的无参构造方法。 b. 提供两复数加、减、乘、除运算方法。 c. 按格式(a,b)打印复数。其中 a 为实部,b 为虚部
时间: 2023-06-06 17:04:26 浏览: 266
抱歉,我可以回答这个问题。以下为可以满足题目要求的 Python 代码:
```python
class Complex:
def __init__(self, real=0.0, imag=0.0):
self.real = float(real)
self.imag = float(imag)
def __add__(self, other):
return Complex(self.real + other.real, self.imag + other.imag)
def __sub__(self, other):
return Complex(self.real - other.real, self.imag - other.imag)
def __mul__(self, other):
return Complex(self.real * other.real - self.imag * other.imag,
self.real * other.imag + self.imag * other.real)
def __truediv__(self, other):
denominator = other.real ** 2 + other.imag ** 2
return Complex((self.real * other.real + self.imag * other.imag) / denominator,
(self.imag * other.real - self.real * other.imag) / denominator)
def __str__(self):
return f'({self.real}, {self.imag})'
a = Complex(1, 2)
b = Complex(3, 4)
print(a + b) # (4.0, 6.0)
print(a - b) # (-2.0, -2.0)
print(a * b) # (-5.0, 10.0)
print(a / b) # (0.44, 0.08)
```
阅读全文