1.计算复数的模
计算复数的幅角
2.计算两个复数的和差
//复数的运算类1.h
#include<iostream>
# include<cmath>
using namespace std;
//复数的计算类
class complex
{
private:
double R; //复数的实部
double I; //复数的虚部
public:
complex(double real=0,double image=0) //构造函数
{
R=real;
I=image;
}
void print() //复数输出
{
cout<<"("<<R<<","<<I<<")" ; //输出为(R,I)
return ;
}
double Cabs() //复数的模
{
double y;
y=sqrt(R*R+I*I);
return 0;
}
double angle() //复数幅角
{
double y;
y=atan2(I,R);
return y;
}
complex operator + (complex& c2) //复数加法。重载运算符+
{
complex c;
c.R=R+c2.R;
c.I=I+c2.I;
return c;
}
complex operator - (complex& c2) //复数减法。重载运算符-
{
complex c;
c.R=R-c2.R;
c.I=I-c2.I;
return c;
}
} ;
//实例计算
#include<iostream>
#include<cmath>
#include"复数运算类.h"
using namespace std;
int main()
{
int i;
double a,b;
complex c1,c2,c3,c,p[5];
cin>>a>>b; //输入c1的实部和虚部
c1=complex(a,b); cout<<"c1="; c1.print(); cout<<endl;
cin>>a>>b; //输入c2的实部和虚部
c2=complex(a,b); cout<<"c2="; c2.print(); cout<<endl;
cin>>a>>b; //输入c3的实部和虚部
c3=complex(a,b); cout<<"c3="; c3.print(); cout<<endl;
c=c1+c2;
cout<<"c1+c2="; c.print();
cout<<endl;
c=c1-c2;
cout<<"c1-c2="; c.print();
cout<<endl;
return 0;
}
计算结果为如下: