第八周--项目1--实现复数类中的运算符重载
/*
* 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)
/**Copyright(c)2016,烟台大学计算机与控制工程学院*All rights reserved*文件名称:123.cpp*作 者:王蕊*完成日期:2016年5月15日*版 本 号:v1. ...
- 第十二周项目一-实现复数类中的运算符重载(3)
/**Copyright(c)2016,烟台大学计算机与控制工程学院*All rights reserved*文件名称:123.cpp*作 者:王蕊*完成日期:2016年5月15日*版 本 号:v1. ...
- 第十二周项目一-实现复数类中的运算符重载(2)
/**Copyright(c)2016,烟台大学计算机与控制工程学院*All rights reserved*文件名称:123.cpp*作 者:王蕊*完成日期:2016年5月15日*版 本 号:v1. ...
- 第十二周上机实践项目 项目1-实现复数类中的运算符重载 (2)
问题及代码: [项目-实现复数类中的运算符重载] (1)请用类的成员函数,定义复数类重载运算符+.-.*./,使之能用于复数的加减乘除 class Complex { public:Complex() ...
- c++第八周【任务1-2】实现复数类中的运算符重载
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: c++第八周 ...
- c++第八周【任务1-1】实现复数类中的运算符重载
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: c++第八周 ...
- 第7周-项目1-完整实现复数类中的运算符重载-扩展+、-、*、/运算符的功能
问题及代码: /* *Copyright (c)2015,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:number.cpp *作 者:单昕昕 *完成日期:20 ...
- c++第八周【任务1-3】实现复数类中的运算符重载
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: * 作 者: ...
- 第十二周-实现复数类中的运算符重载
/* *Copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:main.cpp *作 者:李德彪 *完成时间:2016年5月23日 * ...
最新文章
- Android模拟器环境下SD卡内容的管理[转]
- IOS开发笔记9-C语言基础复习
- RabbitMQ RPC远程调用模式
- java socket windows linux,socket在windows下和linux下的区别
- python全栈开发-json和pickle模块(数据的序列化)
- pyspider all 启动失败:ValueError: Invalid configuration
- java 建模_Java设计模式菜鸟系列(两)建模与观察者模式的实现
- SQLAlchemy create_engine
- 利用Applet类和Runnable接口实现滚动字幕
- sendrequest ajax数据返回,jquery ajax 还没有调用send()方法 返回的状态码XMLHttpRequest.status 是0 ,怎么解决?...
- Address already in use: bind 端口被占用的解决办法
- 现在单片机编程语言是c吗,单片机编程用什么语言 哪个适合新手
- oracleTNS-12555: TNS:permission denied、TNS-12541: TNS:no listener、Instance orcl, status UNKNOWN
- android10全面屏手势 操作图,丨系统设计丨ZUI 10加入更多全面屏手势
- 妹子:为什么我要找个程序员做老公?
- iPhone与iPad开发实战读书笔记
- 选题难没思路?3招教你轻松建立小红书爆款选题库
- 微信活码系统/微信群二维码/活码生成系统/生成微信活码
- 这个AI算法,可以帮“元宇宙”虚拟人进行虚拟更换衣服
- chrome 导入html书签,怎么把谷歌浏览器书签导出来?怎么将书签导入到别的浏览器中?...
热门文章
- dom影像图形成数字地形图_数字正射影像图DOM
- Stimulsoft 仪表板.JS 2022.2.1
- iapp将音量调至最大
- AD18运行PCB DRC显示一处警告, Design contains shelved or modified (but not repoured) polygons.
- MFC通讯系统项目——操作步骤
- Microsoft Visual Studio 2013 产品密匙
- 英文版xp系统下载ghost xp sp3英文版(双语纯净版、可随意转换)
- 【论文笔记】基于深度学习的视觉检测及抓取方法
- 大厂程序员完美的一天
- java生成自增单号(字符+日期+数字)