




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
昆 明 理 工 大 学 理 学 院信息与计算科学专业 操作性实验报告年级: 2010级 姓名: 学号: 指导教师: 实验课程名称: 开课实验室: 理学院机房 实验成绩:学风(5)观察能力(15)操作能力(30)调试能力(50)其它总分实验内容:1 实验/作业题目:写一个分数的程序,应用重载函数,使运算符重载,并实现分数的加减乘除。对1100分内各个分数段给出ABCD的评价2实验/作业课时:2个课时3实验过程(包括实验环境、实验内容的描述、完成实验要求的知识或技能): 先写程序,再写流程图。#includeusing namespace std;class fraction private: int above; /分子 int below; /分母 void reduction(); /约分 fraction makeCommond(fraction); /通分 public: fraction(int a=0,int b=1) /构造函数 above=a;below=b; fraction operator+(fraction); /两分数相加 fraction operator-(fraction); /两分数相减 fraction operator*(fraction); /两分数相乘 fraction operator/(fraction); /两分数相除 void display(); /显示分数 void input(); /输入分数;/*分数的约分*/ void fraction:reduction() int i,comdiv,small,max; if(above1;i-) if(small%i=0 &max%i=0 ) break; comdiv=i; /最大公约数 if(i!=0) above/=i; below/=i; /*分数的通分*/ fraction fraction:makeCommond(fraction frac) int b1=below,b2=frac.below, m,s; if(b1b2) m=b1%b2; s=b2; else m=b2%b1; s=b1; while(m0) int res=s%m; s=m,m=res; int small=(b1*b2)/s; above=above*(small/below); frac.above=frac.above*(small/frac.below); below=small; frac.below=small; return frac; /*分数的相加*/ fraction fraction:operator+(fraction fr) fraction f3; f3.above=above*fr.below+fr.above*below; f3.below=below*fr.below; f3.reduction(); return f3;/*分数的相减*/ fraction fraction:operator-(fraction fr) fraction f3; f3.above=above*fr.below-fr.above*below; f3.below=below*fr.below; f3.reduction(); return f3; /*分数的相乘*/ fraction fraction:operator*(fraction fr) fraction f3; f3.above=above*fr.above; f3.below=below*fr.below; f3.reduction(); return f3; /*分数的相除*/ fraction fraction:operator/(fraction fr) fraction f3; f3.above=above*fr.below; f3.below=below*fr.above; f3.reduction(); return f3; /*分数的输出*/ void fraction:display() coutaboveendl-endlbelowendlendlendl; /*分数的输入*/ void fraction:input() coutabove; while(true) coutbelow; if(below=0) cout分母不能为零!; else break; int main() fraction f1(4,20),f2(80,400); f1.input(); f2.input(); f1.display(); f2.display(); cout分数加法endl; f1.operator+(f2).display(); cout分数减法endl; f1.operator-(f2).display(); cout分数乘法endl; f1.operator*(f2).display(); cout分数除法endl; f1.operator/(f2).display(); return 0;4算法描述、流流程图或程序图:5实验数据和实验结果(用屏幕图形表示,可另加附页):6心得体会:分数的加、减、乘、除,用重载函数重载运算符,使简便,分数的 加、减、乘
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 保洁培训课件命题
- 金溪县物业管理办法
- 银行印章章管理办法
- 2025年河南省郑州市第十九中学物理高三第一学期期末联考试题
- 2025年乡镇村干部考试题及答案
- 企业管理安全生产培训班课件
- 特殊教师案件管理办法
- 纪检案件举报管理办法
- 演出经纪公司管理办法
- 特殊兵种枪支管理办法
- 2025年巴州库尔勒市社区工作者招聘笔试试卷
- 农村拆迁转让协议书
- 原发性醛固酮增多症诊断治疗的专家共识(2024版)解读课件
- 新商标法修订解读:知识产权课件-商标法更新
- 钢厂脱硫脱硝工艺流程图
- 2025年五四制部编版道德与法治五年级上册教学计划(含进度表)
- 食品行业标准化管理体系
- 2025年度国家广播电视总局直属事业单位公开招聘310人笔试带答案
- 初中历年会考试卷及答案
- T-CNAS 18-2020 成人住院患者跌倒风险评估及预防
- 系统功能使用说明及教程
评论
0/150
提交评论