下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验一复数adt的描述及实现1. 实验要求用抽象数据类型描述complex类,要求实现复数的构造(三个构造函数:缺省构造函数、 带有参数的构造函数和拷贝构造函数),设计getreakgetimag甫数来实现复数的取值,setreal> setimag函数设定复数的实部和虚部,用操作符重载实现复数的加法、减法和输出。2. 程序功能说明在用户界血中用户可以选择将要进行的操作,该程序可以实现复数的输入、输115、加 法、减法。3. 概要设计(1)抽象数据类型adt complex!数据对象: 数据关系: 基本操作:d= cl,c2,c3,c4 | cl,c2,c3,c4 均为 double 型
2、 r= <c 1 ,c2>,<c2,c3> ,<c3,c4>) 创建复数 setreal (), setimag (); 取复数的值 getreal (), getimag (); 复数的加法;复数的减法; adt complex;(2) 主函数void main() complex cl,c2,c3,c4; int i=l;while(i>=0&&iv5)coutw" *cout«n cout«h cout«h cout«h cout«h1. 设置复数cln«end
3、l;2. 设置复数c2h«endl;3. 计算两个复数之和h«endl;4. 计算两个复数z差n«endl;0 .退出程序h«endl;cout«f t7,11rtw rtw rtw rtw rvw nw rtw rtw rtw rtw rtw mw rtw rtw rtw rtw rtw rtw rtw etw rtw etw rtw etw rtw ;. etw rtw rtw mw rtw rtw rtw rtw rtw ryw«endl;cout«h请用户输入操作序号:”;cin»i;switch(i)ca
4、se 1:c 1.setimago,c l.setreal();break;case 2:c2.setimago,c2.setrecil();break;case 3:c3=cl+c2; cout«"("«c3.getreal()«,*,h<<c3.getimag()«,),'«endl;break;case 4:c4=c 1 -c2; cout«n(n«c4.getreal()«,h«c4.getimag()«n)n«endl;break; c
5、ase o:exit(l);break;4. 详要设计类定义:#ifndefcomplex_h#define complex.hclass complex private:double realjmag;public:complex()real=0.0;imag=0.0; /缺省构造函数complex(double r,double i)real=r;imag=i;)/带参数的构造函数 complex(complex &p);拷贝构造函数void setreal();void setimago;double getreal() return real;)double getimag()
6、 return imag;)complex operator+(const complex &c2) const;/操作符” 的重载 complex operator-(const complex &c2) const;/ 操作符的重载 ;#endif类实现:# includehcomplex.hh# include<iostream>using namespace std;complex:complex(complex &p) real=p.real;imag=p.imag;jcomplex complex:operator+(const complex
7、&c2) const return complex(real+c2.reauimag+c2.imag);complex complex:operator-(const complex &c2) const return complex(real-c2.realjmag-c2.imag);void complex:setreal() cout«n输入实部:”;cin»real;)void complex:setimag() cout«"输入虚部:”;cin»imag;主函数:# includencomplex.hh# includ
8、e<iostream>using namespace std;void main() complex cl,c2,c3,c4; int i=l;while(i>=0&&i <5) “ 11丄丄“丄丄“丄“丄«£«丄£*丄丄丄丄f if <i* %.叫.叫.叫. <t>7 彳.7#r7 % 7 % 7 彳.77cout«n cout«h coul«n cout«h cout«h1. 设置复数cr*«endl;2. 设置复数c2h«
9、endl;3. 计算两个复数之和“vvendl;4. 计算两个复数之差h«endl;0.退岀程序h«endl; 4 t 卜!* k *k !*!* 卜 *f* k k 卜!* 匕立匕立 *f* 匕卜 *f* k *k *1* k !* k *f* !« *f* !> a *f* 上匕卜匕 土 ! i f ,1 1/*11(/ j icout«h请用户输入操作序号:”;用户界面cin»i;switch(i)case 1:c 1.setimago,c l.setreal();break;case 2:c2.setimago,c2.setrea
10、l();break;case 3:c3=cl+c2; cout«n(m«c3.getreal()«,7,«c3.getimag()«u)m«endl;break;case 4:c4=c 1 -c2; cout«',(,'«c4.getreal()«,m«c4.getimag()«,')',«endl;break; case o:exit(l);break;5. 调试结果和测试说明(1)用户界面厂d:学习4microsoft visual studiomyprojectscdebugc.exemho | 回 i(2)输入复数的值wd:学习smmicrosoft visual studiomyprojectscdebugc.exew“c2w! * ww两两程卄 萱萱篡畀岀卄 设设12 3 4 0 *:1lil2.3.o:isiis请用自输入操作序号:2=| 回a(2)复数的加法d:学习4microsoft visual studiomyprojectscdebugc.exe"8之之
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 后置锚栓安装施工技术方案
- 场地平整土方施工方案
- 电力工程土建施工安全作业规范
- 秸秆沼渣综合利用项目施工方案
- 2026年高职(市场营销)品牌管理专项测试试题及答案
- 景德镇市2026-2027学年四上数学期末监测模拟试题含解析
- 黄冈中学2027届物理八年级第一学期期末调研模拟试题含解析
- 项目劳务人员实名制设备运维制度
- 国企财务内控建设方案
- 销售客户回访管理制度
- 夏季施工防暑降温安全培训
- GB 4789.4-2024食品安全国家标准食品微生物学检验沙门氏菌检验
- 结构设计概况表
- 氟马西尼完整
- 石膏粉研究预测报告-石膏粉行业市场深度分析及发展策略研究预测报告(2024-2028年)
- 医院卒中中心管理委员会制度
- 张朋《了凡四训》课件
- 南阳一标潦河渡槽二次充水试验方案
- 应聘机械工程师考试试题(答案)
- GA 1804-2022危险化学品生产企业反恐怖防范要求
- GB/T 37963-2019电子设备可靠性预计模型及数据手册
评论
0/150
提交评论