复数四则运算-c++代码实现

来源:互联网 发布:js面向对象的理解 编辑:程序博客网 时间:2024/05/16 08:47

c++代码



#include <iostream>using namespace std;class complex//类置于开始部分{private:    double imag;//虚部实部    double real;public:    complex add(complex x);//四则运算    complex sub(complex x);    complex mul(complex x);    complex div(complex x);    void output();//打印输出    void initSet(double re,double im);//初始化};void complex::initSet(double re=0,double im=0)//不传参默认值为零{    real=re;    imag=im;}void complex::output(){        if(real!=0)        {            cout<<real;            if(imag>0)                cout<<"+"<<imag<<"i";            else if(imag==0)                cout<<imag;            else if(imag<0)                cout<<"-"<<imag<<"i";        }        else        {            if(imag>0)                cout<<imag<<"i";            else if(imag==0)                cout<<imag;            else if(imag<0)                cout<<"-"<<imag<<"i";        }        cout<<endl;}complex complex::add(complex x){    complex result;    result.real=real+x.real;    result.imag=imag+x.imag;    return result;}complex complex::sub(complex x){    complex result;    result.real=real-x.real;    result.imag=imag-x.imag;    return result;}complex complex::mul(complex x){    complex result;    result.real=real*x.real-imag*x.imag;    result.imag=imag+x.real+x.imag*real;    return result;}complex complex::div(complex x){    complex result;    if(x.real==0&&x.imag==0)        {            cout<<"除数不能为零"<<endl;            cout<<"被除数为:"<<endl;        }    else    {        result.real=(real*x.real+imag*x.imag)/(x.real*x.real+x.imag*x.imag);        result.imag=(imag*x.real-x.imag*real)/(x.real*x.real+x.imag*x.imag);        return result;    }    result.real=real+x.real;    result.imag=imag+x.imag;    return result;}int main(){    complex x1,x2,x3,x4,result1,result2,result3,result4;    x1.initSet(-1,1);//初始化,整数、小数均可    x2.initSet(-2,2);    x3.initSet(0,3);    x4.initSet();    cout<<"复数x1的值"<<endl;    x1.output();//先打印输出    cout<<"复数x2的值"<<endl;    x2.output();    cout<<"复数x3的值"<<endl;    x3.output();    cout<<"复数x4的值"<<endl;    x4.output();    cout<<"x1与x2相加的结果"<<endl;    result1=x1.add(x2);//x1与x2相加    result1.output();//输出结果    cout<<"x2与x3相减的结果"<<endl;    result2=x2.sub(x3);    result2.output();    cout<<"x3与x1相乘的结果"<<endl;    result3=x3.mul(x1);    result3.output();    cout<<"x2与x4相除的结果"<<endl;    result4=x2.div(x4);    result4.output();    return 0;}


运算结果


原创粉丝点击