📄 complex.cpp
字号:
// complex.cpp: implementation of the Ccomplex class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "complex.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
Ccomplex::Ccomplex(double re,double im)
{this->real=re;
this->image=im;
}
void Ccomplex::set(double re,double im)
{this->real=re;
this->image=im;
}
/*
void Ccomplex ::show(void)
{if(real!=0)
{//std::cout<<real;
if(image>0)
;//std::cout<<'+'<<image<<'i'<<std::endl;
else if(image<0)
;//std::cout<<image<<'i'<<std::endl;
else
;//std::cout<<std::endl;
}
else
{if(image==0)
;//std::cout<<'0'<<std::endl;
else
;//std::cout<<image<<'i'<<std::endl;
}
}
*/
double Ccomplex ::getreal(void)
{return this->real;}
double Ccomplex ::getimage(void)
{return this->image;}
Ccomplex Ccomplex ::conjugate(void)
{Ccomplex c(0,0);
//c.real=real;
//c.image=-image;
c.set(this->real,-(this->image));
return c;
}
Ccomplex Ccomplex ::operator+(Ccomplex &b)
{Ccomplex c(0,0);
//c.real=real+b.getreal();
//c.image=image+b.getimage();
c.set(this->real+b.getreal(),this->image+b.getimage());
return c;
}
Ccomplex Ccomplex ::operator-(Ccomplex &b)
{Ccomplex c(0,0);
//c.real=real-b.getreal();
//c.image=image-b.getimage();
c.set(this->real-b.getreal(),this->image-b.getimage());
return c;
}
Ccomplex Ccomplex ::operator*(Ccomplex &b)
{Ccomplex c(0,0);
//c.real=real*b.getreal()-image*b.getimage();
//c.image=image*b.getreal()+real*b.getimage();
c.set(this->real*b.getreal()-this->image*b.getimage(),this->image*b.getreal()+this->real*b.getimage());
return c;
}
Ccomplex Ccomplex ::operator*(double b)
{Ccomplex c(0,0);
//c.real=real*b;
//c.image=image*b;
c.set(this->real*b,this->real*b);
return c;
}
Ccomplex Ccomplex ::operator/(Ccomplex &b)
{double temp=b.getreal()*b.getreal()+b.getimage()*b.getimage();
Ccomplex c(0,0);
if(temp==0)
{AfxMessageBox("除数为0,错误!");
c.set(0,0);
exit(-2);
}
else
{//c.real=(real*b.getreal()+image*b.getimage())/temp;
//c.image=(image*b.getreal()-real*b.getimage())/temp;
c.set((this->real*b.getreal()+this->image*b.getimage())/temp,(this->image*b.getreal()-this->real*b.getimage())/temp);
}
return c;
}
Ccomplex Ccomplex ::operator/(double b)
{Ccomplex c(0,0);
if(b==0)
{AfxMessageBox("除数为0,错误!");
exit(-2);
}
else
{//c.real=real/b;
//c.image=image/b;
c.set(this->real/b,this->image/b);
}
return c;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -