#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;
class Complex
{
private:
int _real;
int _image;
public:
Complex(int real=1,int image=2)
:_real(real)
,_image(image)
{
}
Complex& operator+(const Complex& com2)
{
return Complex(_real+com2._real,_image+com2._image);
}
Complex& operator-(const Complex& com2)
{
return Complex(_real-com2._real,_image-com2._image);
}
Complex& operator*(Complex& com2)
{
return Complex(_real*com2._real-_image*com2._image,_real*com2._image+_image*com2._real);
}
//:(a+bi)/(c+di)=(ac+bd)/(c^2+d^2) +(bc-ad)/(c^2+d^2)i
Complex& operator/(const Complex& com2)
{
return Complex ((_real*com2._real+_image*com2._image)\
/(com2._real*com2._real+com2._image*com2._image)\
,_image*com2._real-_real*com2._image);
}
void Display()
{
cout<<(_real)<<"+"<<(_image)<<"i"<<endl;
}
~Complex()
{
}
};
int main()
{
Complex com1(3,6);
Complex com2(4,5);
Complex com3;
Complex com4;
Complex com5;
Complex com6;
com1.Display();
com2.Display();
cout<<endl;
//加
cout<<"加法"<<endl;
com3=com1+com2;
com3.Display();
cout<<endl;
//减
cout<<"减法"<<endl;
com4=com1-com2;
com4.Display();
cout<<endl;
//乘法
cout<<"乘法"<<endl;
com5=com1*com2;
com5.Display();
cout<<endl;
//除法
cout<<"除法"<<endl;
com6=com1/com2;
com6.Display();
cout<<endl;
return 0;
}
c++实现复数类运算
最新推荐文章于 2025-05-12 12:01:39 发布