采用方法重载,编写程序定义一个复数加法类,支持整型、浮点型系数的复数的构造,支复数的相加和相乘,创建Demo类演示功能
时间: 2023-04-08 19:01:14 浏览: 110
用重载运算符的方法进行复数的加、减、乘、除运算
好的,这是一个关于编程的问题,我可以回答。可以使用方法重载来定义一个复数加法类,支持整型、浮点型系数的复数的构造,支持复数的相加和相乘。以下是示例代码:
```
class Complex {
private:
double real;
double imag;
public:
Complex(double r = 0, double i = 0) {
real = r;
imag = i;
}
Complex operator + (Complex const &obj) {
Complex res;
res.real = real + obj.real;
res.imag = imag + obj.imag;
return res;
}
Complex operator * (Complex const &obj) {
Complex res;
res.real = real*obj.real - imag*obj.imag;
res.imag = real*obj.imag + imag*obj.real;
return res;
}
void print() {
cout << real << " + i" << imag << endl;
}
};
int main() {
Complex c1(2.5, 3.5);
Complex c2(1.5, 2.5);
Complex c3 = c1 + c2;
Complex c4 = c1 * c2;
c3.print();
c4.print();
return 0;
}
```
这个程序定义了一个复数类,支持复数的加法和乘法操作。在主函数中,我们创建了两个复数对象c1和c2,然后使用加法和乘法操作来计算c1和c2的和与积,最后输出结果。
阅读全文