建立一个复数类Complex,其私有数据成员mX和mY表示复数的实部和虚部,构造函数Complex用于对复数的实部和虚部初始化,友员函数Add,Sub,Mul和Div分别用于进行复数的加、减、乘和除法运算,函数Show用于显示运算结果。在主函数中,实例化两个复数,并输入一个运算符,按运算符选择相应的友员函数进行复数运算,然后输出运算结果。


//Complex .h#pragma once
class Complex
{public:Complex(double a=0,double b=0);friend Complex add(Complex a, Complex b);friend Complex sub(Complex a, Complex b);friend Complex mul(Complex a, Complex b);friend Complex div(Complex a, Complex b);void show();
private:double mx, my;};
//complex cpp
#include "pch.h"
#include "Complex.h"
#include <iostream>
#include<cmath>
using namespace std;Complex::Complex(double a, double b)
{mx = a;my = b;
}
Complex add(Complex a, Complex b)
{double cx = a.mx + b.mx;double cy = a.my + b.my;Complex p = Complex(cx, cy);return p;
}
Complex sub(Complex a, Complex b)
{double cx = a.mx - b.mx;double cy = a.my - b.my;Complex p = Complex(cx, cy);return p;
}
Complex mul(Complex a, Complex b)
{double cx = a.mx * b.mx - a.my * b.my;double cy = a.my * b.mx + a.mx * b.my;Complex p = Complex(cx, cy);return p;
}
Complex div(Complex a, Complex b)
{double cx = (a.mx * b.mx + a.my*b.my) / (pow(b.mx, 2) + pow(b.my, 2));double cy = (a.my * b.mx - a.mx*b.my)/(pow(b.mx, 2) + pow(b.my, 2));Complex p = Complex(cx, cy);return p;
}
void Complex::show()
{if(mx==0) cout << "answer:" << my << 'i' << endl;else if(my>0) cout << "answer:" << mx << '+' << my << 'i' << endl;else if(my<0) cout << "answer:" << mx << my << 'i' << endl;else cout << "answer:" << mx << endl;
}
//main cpp#include "pch.h"
#include "Complex.h"
#include <iostream>
using namespace std;
int main()
{char a;double b, c, d, e;while (cin >> a >> b >> c >> d >> e){Complex x(b, c), y(d, e);Complex p;switch (a){case '+':p = add(x, y); break;case '-':p = sub(x, y); break;case '*':p = mul(x, y); break;default:p = div(x, y); break;break;}p.show();}
}

建立一个复数类Complex,其私有数据成员mX和mY表示复数的实部和虚部,构造函数Complex用于对复数的实部和虚部初始化相关推荐

  1. 定义一个矩形类(Rectangle),私有数据成员为矩形的长度( len)和宽度(wid),缺省构造函数置len和wid为0,有参构造函数置len和wid为对应形参的值,另外还包括求矩形周长、面积

    #include <iostream> using namespace std; class Rectangle {     private: double len,wid; //私有数据 ...

  2. 如何在类的外部修改类中的私有数据成员

    一般的情况是类中的私有数据成员,只能是类的对象自己可以修改,从外部是不能更改的如下例子 #include<iostream> using namespace std;class Data ...

  3. 【python】 定义一个Person类,它包含数据成员age, name和gender。从Person中派生一个类Employee,在新类中添加一个数据成员,存储个人的number.等等

    # 定义一个Person类,它包含数据成员age, name和gender. # a. 从Person中派生一个类Employee,在新类中添加一个数据成员,存储个人的number. # 再从Empl ...

  4. 友元函数、友元类、访问私有数据成员、友元关系[C++]

    友元函数(friend function) 1. 什么是友元函数?     一个类的私有数据成员通常只能由类的函数成员来访问,而友元函数可以访问类的私有数据成员,也能访问其保护成员 2. 友元函数的用 ...

  5. 构建一个类book,其中含有2个私有数据成员qu和price,建立一个有5个元素的数组对象,将qu初始化为1~5,将price初始化为qu的10倍。

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 题目: 构建一个类book,其中含有2个私有数据成员qu和price,建立一个有5个元素的数组对象,将qu初始化为1~5,将price ...

  6. java定义一个日期类 包括年 月 日_【说明】 设计一个日期类Date包括年、月、日等私有数据成员。要求实现日期..._考试资料网...

    填空题[说明] 设计一个日期类Date包括年.月.日等私有数据成员.要求实现日期的基本运算,如某日期加上天数.某日期减去天数.两日期相差的天数等. 在Date类中设计如下重载运算符函数: Date o ...

  7. C++:建立Cylinder类,有三个double型私有数据成员:半径、高和体积,构造函数传递两个值:半径和高,计算体积。成员函数showVolume()用来显示每个对象的体积。

    C++:建立Cylinder类,有三个double型私有数据成员:半径.高和体积,构造函数传递两个值:半径和高,计算体积.成员函数showVolume()用来显示每个对象的体积. #include&l ...

  8. 定义一个三角形类(TRI)及其派生类三角柱体类(COL)。其中三角形类可以计算三角形的面积和周长;三角柱体类可以计算柱体的体积和表面积。其具体要求如下: (1)TRI的成员如下:  私有数据成员 

    题目要求: 定义一个三角形类(TRI)及其派生类三角柱体类(COL).其中三角形类可以计算三角形的面积和周长:三角柱体类可以计算柱体的体积和表面积.其具体要求如下: (1)TRI的成员如下: 私有数据 ...

  9. (C++)设计一个日期类Date,包括年、月、日等私有数据成员。要求实现日期的基本运算,包括某日期加上指定天数、某日期减去指定天数、两个日期相差的天数等。

    C++面向对象程序设计课后作业第239页第5题 题目要求:设计一个日期类Date,包括年.月.日等私有数据成员.要求实现日期的基本运算,包括某日期加上指定天数.某日期减去指定天数.两个日期相差的天数等 ...

最新文章

  1. 【Android 安全】DEX 加密 ( Application 替换 | 替换 LoadedApk 中的 Application mApplication 成员 )
  2. 关于未达账项的账务处理
  3. animation停留_这些Animation动画技巧与细节你知道么
  4. python项目方案书模板格式_项目策划书模板范文
  5. “知识付费”里有知识吗?
  6. 基于python+django框架+Mysql数据库的旅游景区景点售票系统设计与实现
  7. Linux基础PHP网站搭建
  8. 复现CLOCs中spconv v1.0 (commit 8da6f96)踩坑记录
  9. ubuntu 20.04安装各类软件
  10. Linux 内核文件系统模块结构体关系图
  11. python3两个三阶矩阵相乘_两个三阶矩阵相乘的例子和方法!急!
  12. RFC2889MAC地址学习速率——网络测试仪实操
  13. 能ping通,但是telnet端口连接失败
  14. 【Unity3D】Unity3D技术栈
  15. 放到回收站的文件清空了能恢复吗
  16. Linux系统中设备主要分为哪几类?
  17. 解决mac系统向日葵远控无法被远程控制问题(白屏)
  18. 个人 IP 打造方法
  19. FCOS论文复现:通用物体检测算法
  20. 学计算机女生找不到男朋友,很多漂亮的女生,找不到男朋友,都躲不开这四个原因...

热门文章

  1. 如何实现自动化按图片搜索淘宝商品(拍立淘)功能?拍立淘API接口item_search_img
  2. BP神经网络之鸢尾花
  3. 拷贝和引用有什么区别php,php引用和拷贝的区别知识点总结
  4. 简单的视频剪辑入门制作软件,适合新手哦,快快收藏
  5. 《网络架构系列2-Http详解》
  6. js 监听键盘的enter键
  7. 手把手教你进行微信小程序开发案例1---计算器
  8. 采用分治算法迭代计算最长公共前缀问题(python)
  9. 【5G RRC】5G系统消息介绍
  10. java基础代码练习