C++实现复数四则运算

在开始正文之前,我想说一下,当某些垃圾小朋友看到“复数”时,绝对会嚷嚷起来:“哇哇哇,这不是我不久前学的英语里的那个垃圾要加s的东西吗?怎么还有四则运算啊?”抱歉,此“复数”非“复数”!

复数,顾名思义,就是复杂的数,它由实部和虚部构成,实部就是一个普通的数,虚部是一个数+i的形式,其中i*i=-1(或者说i=根号-1),是一个虚数,复数的基本形式:a+bi

OK,废话不少说,开始正文!复数的运算法则如下:↓

这个时候有人就要说了,这还用你教?实部加减乘除,虚部的数也加减乘除,i不变,这玩意儿不是很简单吗?呵呵,你这样,虽然加减法没问题,但是乘除法......你就等着错吧!好好好,玩笑归玩笑,正确的法则还是要给的,下面就是正确的法则:↓

        加法:(a+bi)+(c+di)=(a+c)+(b+d)i
        减法:(a+b)-(c+di)=(a-c)+(b-d)i
        乘法:(a+bi)*(c+di)=(ac-bd)+(bc+ad)i
        除法:(ac + bd)/(c^2 + d ^2) +((bc - ad)/(c ^2 + d ^2)) i
知道了法则之后,运算就很简单了,下面是示范代码:

#include <bits/stdc++.h>

using namespace std;

int main()

{

    int a,b,c,d;

    char j,i;

    cin >> a >> j >> b >> i >> c >> j >> d >> i;

    cout<<"和是:"<<a+b<<"+"<<c+d<<"i\n";//加法

    cout<<"差是:"<<a-c<<"+"<<b-d<<"i\n";//减法

    cout<<"积是:"<<a*c-b*d<<"+"<<b*c+a*d<<"i\n";//乘法

    int y=c*c+d*d;

    cout<<"商是:"<<(a*c+b*d)/y<<"+"<<(b*c-a*d)/y<<"i\n";//除法

    return 0;

}

由于上面代码我没有在oj网站上提交过 ,所以“有可能”会错,如果各位发现了我的错误,可以在评论区指出哦!

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值