复数类Imaginary的设计(C++)——根据以下主函数的功能来设计复数类Imaginary,使其能正确运行。类Imaginary中应该具有描述复数的实部和虚部的私有数据成员a和b,还有相应的构造函

【问题描述】

根据以下主函数的功能来设计复数类Imaginary,使其能正确运行。类Imaginary中应该具有描述复数的实部和虚部的私有数据成员a和b,还有相应的构造函数和按照“a±bi”格式显示复数的成员函数print()。设计类Imaginary的2个友元函数分别进行复数的加、减运算,并在这些函数调用类Imaginary的成员函数print()显示结果。

int main()

{

float x1,y1,x2,y2;

cin>>x1>>y1>>x2>>y2;    //输入4个数据,分别表示进行运算的两个复数的实部和虚部

Imaginary imag1(x1,y1),imag2(x2,y2);    //用x1、y1创建Imaginary类对象imag1

Add(imag1,imag2);   //调用友元函数求两个复数之和,按a±bi的格式显示运算结果(a和b均为实数)

Sub(imag1,imag2);   //求两个复数之差并显示运算结果

return 0;

}

【输入形式】

输入4个数据,分别表示进行运算的两个复数的实部和虚部

【输出形式】

2行,分别显示两个复数进行加、减运算的结果

【样例输入】

1 3 2 5

【样例输出】

3+8i

-1-2i

#include<iostream>
using namespace std;
class Imaginary
{
    public:
        Imaginary(float a,float b){x=a;y=b;};
        friend void Ad(Imaginary c1,Imaginary c2);
        friend void Su(Imaginary c1,Imaginary c2);
    private:
        float x,y;
};
void Ad(Imaginary c1,Imaginary c2)
{
    cout<<c1.x+c2.x<<"+"<<c1.y+c2.y<<"i"<<endl;
}
void Su(Imaginary c1,Imaginary c2)
{
    cout<<c1.x-c2.x<<c1.y-c2.y<<"i"<<endl;
}
int main()
{
    float x1,y1,x2,y2;
    cin>>x1>>y1>>x2>>y2;
    Imaginary c1(x1,y1),c2(x2,y2);
    Ad(c1,c2);
    Su(c1,c2);
    return 0;
}


发布了61 篇原创文章 · 获赞 66 · 访问量 3696
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 技术工厂 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览