/*
* Copyright (c) 2011, 烟台大学计算机学院
* All rights reserved.
* 作    者:王静
* 完成日期:2013  年 4  月 24  日
* 版 本 号:v1.0
* 输入描述:
* 问题描述:
* 程序输出:
* 问题分析:
* 算法设计:略
*/
#include <iostream>
using namespace std;
class Complex
{
public:
Complex( ){real=0;imag=0;}
Complex(double r,double i){real=r;imag=i;}
friend Complex operator+(Complex &c1,Complex &c2);
friend Complex operator-(Complex &c1,Complex &c2);
friend Complex operator*(Complex &c1,Complex &c2);
friend Complex operator/(Complex &c1,Complex &c2);
void display( );
private:
double real;
double imag;
};
Complex operator+(Complex &c1,Complex &c2)
{
Complex c;
c.real=c1.real+c2.real;
c.imag=c1.imag+c2.imag;
return c;
}
Complex operator-(Complex &c1,Complex &c2)
{
Complex c;
c.real=c1.real-c2.real;
c.imag=c1.imag-c2.imag;
return c;
}
Complex operator*(Complex &c1,Complex &c2)
{
Complex c;
c.real=c1.real*c2.real-c1.imag*c2.imag;
c.imag=c1.imag*c2.real+c1.real*c2.imag;
return c;
}
Complex operator/(Complex &c1,Complex &c2)
{
Complex c;
c.real=(c1.real/c2.real+c1.imag/c2.imag)/(c2.real*c2.real+c2.imag*c2.imag);
c.imag=(c1.imag/c2.real-c1.real/c2.imag)/(c2.real*c2.real+c2.imag*c2.imag);
return c;
}
void Complex::display()
{
cout<<"("<<real<<","<<imag<<"i)"<<endl;
}
int main( )
{
Complex c1(3,4),c2(5,-10),c3;
cout<<"c1+c2=";
c3=c1+c2;
c3.display( );
cout<<"c1-c2=";
c3=c1-c2;
c3.display( );
cout<<"c1*c2=";
c3=c1*c2;
c3.display( );
cout<<"c1/c2=";
c3=c1/c2;
c3.display( );
system("pause");
return 0;
}

运行结果:
(贴图)

心得体会:

第八周--项目1--实现复数类中的运算符重载相关推荐

  1. 第十二周项目一-实现复数类中的运算符重载(1)

    /**Copyright(c)2016,烟台大学计算机与控制工程学院*All rights reserved*文件名称:123.cpp*作 者:王蕊*完成日期:2016年5月15日*版 本 号:v1. ...

  2. 第十二周项目一-实现复数类中的运算符重载(3)

    /**Copyright(c)2016,烟台大学计算机与控制工程学院*All rights reserved*文件名称:123.cpp*作 者:王蕊*完成日期:2016年5月15日*版 本 号:v1. ...

  3. 第十二周项目一-实现复数类中的运算符重载(2)

    /**Copyright(c)2016,烟台大学计算机与控制工程学院*All rights reserved*文件名称:123.cpp*作 者:王蕊*完成日期:2016年5月15日*版 本 号:v1. ...

  4. 第十二周上机实践项目 项目1-实现复数类中的运算符重载 (2)

    问题及代码: [项目-实现复数类中的运算符重载] (1)请用类的成员函数,定义复数类重载运算符+.-.*./,使之能用于复数的加减乘除 class Complex { public:Complex() ...

  5. c++第八周【任务1-2】实现复数类中的运算符重载

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: c++第八周 ...

  6. c++第八周【任务1-1】实现复数类中的运算符重载

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: c++第八周 ...

  7. 第7周-项目1-完整实现复数类中的运算符重载-扩展+、-、*、/运算符的功能

    问题及代码: /* *Copyright (c)2015,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:number.cpp *作 者:单昕昕 *完成日期:20 ...

  8. c++第八周【任务1-3】实现复数类中的运算符重载

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: * 作 者: ...

  9. 第十二周-实现复数类中的运算符重载

    /* *Copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:main.cpp *作    者:李德彪 *完成时间:2016年5月23日 * ...

最新文章

  1. Android模拟器环境下SD卡内容的管理[转]
  2. IOS开发笔记9-C语言基础复习
  3. RabbitMQ RPC远程调用模式
  4. java socket windows linux,socket在windows下和linux下的区别
  5. python全栈开发-json和pickle模块(数据的序列化)
  6. pyspider all 启动失败:ValueError: Invalid configuration
  7. java 建模_Java设计模式菜鸟系列(两)建模与观察者模式的实现
  8. SQLAlchemy create_engine
  9. 利用Applet类和Runnable接口实现滚动字幕
  10. sendrequest ajax数据返回,jquery ajax 还没有调用send()方法 返回的状态码XMLHttpRequest.status 是0 ,怎么解决?...
  11. Address already in use: bind 端口被占用的解决办法
  12. 现在单片机编程语言是c吗,单片机编程用什么语言 哪个适合新手
  13. oracleTNS-12555: TNS:permission denied、TNS-12541: TNS:no listener、Instance orcl, status UNKNOWN
  14. android10全面屏手势 操作图,丨系统设计丨ZUI 10加入更多全面屏手势
  15. 妹子:为什么我要找个程序员做老公?
  16. iPhone与iPad开发实战读书笔记
  17. 选题难没思路?3招教你轻松建立小红书爆款选题库
  18. 微信活码系统/微信群二维码/活码生成系统/生成微信活码
  19. 这个AI算法,可以帮“元宇宙”虚拟人进行虚拟更换衣服
  20. chrome 导入html书签,怎么把谷歌浏览器书签导出来?怎么将书签导入到别的浏览器中?...

热门文章

  1. dom影像图形成数字地形图_数字正射影像图DOM
  2. Stimulsoft 仪表板.JS 2022.2.1
  3. iapp将音量调至最大
  4. AD18运行PCB DRC显示一处警告, Design contains shelved or modified (but not repoured) polygons.
  5. MFC通讯系统项目——操作步骤
  6. Microsoft Visual Studio 2013 产品密匙
  7. 英文版xp系统下载ghost xp sp3英文版(双语纯净版、可随意转换)
  8. 【论文笔记】基于深度学习的视觉检测及抓取方法
  9. 大厂程序员完美的一天
  10. java生成自增单号(字符+日期+数字)