#include <iostream>
using namespace std;
class Complex{
public:
Complex(){real=0;image=0;}
Complex(double r,double i):real(r),image(i){}
void display();
Complex operator+(Complex &c1);
Complex operator-(Complex &c1);
Complex operator*(Complex &c1);
Complex operator/(Complex &c1);
private:
double real;
double image;
};
void Complex::display(){
cout<<"("<<real<<","<<image<<"i)"<<endl;
}
Complex Complex :: operator+(Complex &c2){
return Complex(real+c2.real,image+c2.image);
}
Complex Complex :: operator-(Complex &c2){
return Complex(real-c2.real,image-c2.image);
}
Complex Complex :: operator*(Complex &c2){
return Complex(real*c2.real,image*c2.image);
}
Complex Complex :: operator/(Complex &c2){
if(c2.real==0||c2.image==0){
cout<<"错误!"<<endl;
}else{
return Complex(real/c2.real,image/c2.image);
}
}
int main(){
Complex c1(3,4),c2(6,7),c3,c4,c5,c6;
c3=c1+c2;
c4=c1-c2;
c5=c1*c2;
c6=c1/c2;
cout<<"c3=";
c3.display();
cout<<"c4=";
c4.display();
cout<<"c5=";
c5.display();
cout<<"c6=";
c6.display();
return 0;
}