Complex::Complex(float _real,float _image)
{
real = _real;
image = _image;
}
Complex operator+(const Complex& c1,const Complex& c2)
{
int real = c1.real + c2.real;
int image = c1.image + c2.image;
return Complex(real,image);
}
Complex operator*(const Complex& c1,const Complex& c2)
{
int real = (c1.real * c2.real) + (c1.image * c2.image);
int image = (c1.real * c2.image) + (c1.image * c2.real) ;
return Complex(real,image);
}
Complex operator/(const Complex& c1,const Complex& c2)
{
float real = 0,image = 0;
if((c2.real * c2.real + c2.image * c2.image) != 0)
{
real= (c1.real * c2.real + c1.image * c2.image) / (c2.real * c2.real + c2.image * c2.image);
image = (c1.image * c2.real - c1.real * c2.image ) / (c2.real * c2.real + c2.image * c2.image);
}
else
{
cout<<”除数为0!”<
out<<c.image<<"i"<<endl;
}
else if( c.image < 0)
out<<c.image<<"i"<<endl;
}
return out;
}
Complex operator-(const Complex& c1,const Complex& c2)
{
int real = c1.real - c2.real;
int image = c1.image - c2.image;
return Complex(real,image);
}
Complex& operator-=( Complex& c1, Complex& c2)
{
c1 = c1 - c2;
return c1;
}
bool operator==(const Complex& c1,const Complex& c2)
{
if(c1.real == c2.real && c1.image == c2.image)
{
return true;
}
else
return false;
}
bool operator!=(const Complex& c1,const Complex& c2)
{
if(c1 == c2)
{
return false;
}
else
return true;
}
Complex operator++(Complex& c1,int )
{
return Complex(c1.real++,c1.image);
}
Complex& operator++(Complex& c1)
{
++c1.real;
return c1;
}