c++实现复数计算

#include<iostream>
using namespace std;
typedef struct fushu
{
    /* data */
    float realpart;
    float imagpart;
} Complex;

Complex assign(float real,float imag);
Complex add(Complex A,Complex B);
Complex minus(Complex A,Complex B);
Complex multiply(Complex A,Complex B);
Complex divide(Complex A,Complex B);

float GetReal(Complex C)
{
    return C.realpart;
}

float GetImag(Complex C)
{
    return C.imagpart;
}

Complex assign(float real,float imag)
{
    Complex A;
    A.realpart=real;
    A.imagpart=imag;
    return A;
}

Complex add(Complex A,Complex B)
{
    Complex sum;
    sum.realpart=A.realpart+B.realpart;
    sum.imagpart=A.imagpart+B.imagpart;
    return sum;
}

Complex minus(Complex A,Complex B)
{
    Complex sum;
    sum.realpart=A.realpart-B.realpart;
    sum.imagpart=A.imagpart-B.imagpart;
    return sum;
}

Complex multiply(Complex A,Complex B)
{
    Complex sum;
    sum.realpart=(A.realpart*B.realpart-A.imagpart*B.imagpart);
    sum.imagpart=(A.imagpart*B.realpart+A.realpart*B.imagpart);
    return sum;
}

Complex divide(Complex A,Complex B)
{
    Complex sum;
    sum.realpart=(A.realpart*B.realpart+A.imagpart*B.imagpart)
                    /(B.realpart*B.realpart+B.imagpart*B.imagpart);
    sum.imagpart=(A.imagpart*B.realpart-A.realpart*B.imagpart)
                    /(B.realpart*B.realpart+B.imagpart*B.imagpart);
    return sum;
}
int main()
{
    Complex z1,z2,z3,z4,z;
    z1=assign(8.0,6.0);
    z2=assign(4.0,3.0);
    z3=add(z1,z2);
    z4=multiply(z1,z2);
    z=divide(z4,z3);
    if(z.imagpart<0)
    {
        cout<<z.realpart<<z.imagpart<<"i"<<endl;
    }   
    else{
        cout<<z.realpart<<"+"<<z.imagpart<<"i"<<endl;
    }
    system("pause");
    return 0;
}
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值