课 程 设 计 报 告
课程名称 算法与程序设计 课题名称 分数计算器设计
专 业 信息与计算科学 班 级 1601班 学 号 14 28 姓 名 王世成 许依哲 指导教师 王祝君、赵钍焱
2018年 01 月 04日
1
湖 南 工 程 学 院
课 程 设 计 任 务 书
课程名称 算法与程序设计 课 题 分数计算器设计
专业班级 信息与计算科学1601班 学生姓名 王世成 许依哲 学 号 14 28 指导老师 王祝君、赵钍焱 审 批
任务书下达日期 2017 年 12 月 18日 任务完成日期 2018 年 01 月 04日
2
一.设计要求: 1、问题描述
定义一个整数类。
定义一个分数类,由整数类派生。能对分数进行各种计算和输入/输出。
2、功能要求
(1)定义整数类和分数类。其中,包括构造函数、析构函数、显示函数等。 (2)输入/输出:对流提取和流插入运算符进行重载。 (3)计算功能:可进行分数的加、减、乘和除法运算。 (4)化简功能:将分数化简为最简分数。 (5)异常处理功能:分数中分母不能为零。
(6)菜单功能:每种功能的操作都是在菜单中进行相应选择。
3、问题的解决方案
根据系统功能要求,可以将问题解决分为以下步骤:
应用系统分析,建立该系统的功能模块框图以及界面的组织和设计; (2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试; (8)完成系统总结报告。
3
? 前言
在网站上找了一个源代码对它进行了分析,我们一起读懂这个程序在这个过程当中碰到我不懂的和他不懂的地方,但是经过两个人的合作最终把程序全部都读懂了,如由开始的定义整数类,不清楚为什么要定义两个,后来慢慢看下去之后就知道了,因为这个要由整数类派生出分数类,在后面也碰到王看不懂的地方如约分,经过我给他举实例然后再通过用程序代码打上去,慢慢就对这个分数计算器的计算功能全部了解了,包括后面的层次图,我通过上网百度层次图的结构,他则对整个程序进行分析,从整个层面上看。
拿到这个课题之后我们一起查找资料,源代码有很多不理解的地方,我们一起学习,一点点的理解。还有层次图的设计,系统的调试,分析,一个个过程慢慢摸索,两个人互相帮助下,完成了这个课题。系统调试过程出现一些问题,后来经过询问来老师,上网搜索的方法纠正了错误,让程序顺利进行。
4
目录
(一)需求分析.......................................................................... 6 (二)总体设计.......................................................................... 6 (三)详细设计.......................................................................... 7 (四)系统调试.......................................................................... 8 (六)使用说明及编程体会 ................................................... 11 (七)关键源程序(带注释) ............................................... 11
5