用C++,设计一个复数类,实现相应的加减乘方法,注意方法设计中的参数和返回值的使用。
时间: 2024-02-06 15:11:57 浏览: 59
设计一个时钟类Clock.zip_c++ 时钟clock_时钟类_时钟类设计_设计CClock类_设计时钟类
好的,这里是一个基本的复数类的 C++ 代码示例:
```cpp
#include <iostream>
using namespace std;
class ComplexNumber {
public:
ComplexNumber(double real_part, double imag_part) : real_part_(real_part), imag_part_(imag_part) {}
ComplexNumber operator+(const ComplexNumber& other) const {
return ComplexNumber(real_part_ + other.real_part_, imag_part_ + other.imag_part_);
}
ComplexNumber operator-(const ComplexNumber& other) const {
return ComplexNumber(real_part_ - other.real_part_, imag_part_ - other.imag_part_);
}
ComplexNumber operator*(const ComplexNumber& other) const {
double real = real_part_ * other.real_part_ - imag_part_ * other.imag_part_;
double imag = real_part_ * other.imag_part_ + imag_part_ * other.real_part_;
return ComplexNumber(real, imag);
}
void Print() const {
cout << real_part_ << (imag_part_ >= 0 ? "+" : "-") << abs(imag_part_) << "i" << endl;
}
private:
double real_part_;
double imag_part_;
};
int main() {
ComplexNumber c1(1, 2);
ComplexNumber c2(3, -4);
ComplexNumber sum = c1 + c2;
ComplexNumber diff = c1 - c2;
ComplexNumber product = c1 * c2;
sum.Print(); // Output: 4-2i
diff.Print(); // Output: -2+6i
product.Print(); // Output: 11+2i
return 0;
}
```
在上面的代码中,我们定义了一个名为 `ComplexNumber` 的复数类,其中包含了一个实部和一个虚部。在类的成员函数中,我们重载了 `+`、`-` 和 `*` 运算符,使得我们可以使用这些运算符对两个复数对象进行加、减和乘法运算。在 `operator*` 函数中,我们使用了传统的复数乘法公式来计算两个复数对象的乘积。在 `Print` 函数中,我们将复数对象转换为字符串输出。最后在 `main` 函数中,我们创建了两个复数对象,并分别计算它们的和、差和积,并通过 `Print` 函数将结果输出。
阅读全文