c++复数计算器课程设计报告.doc
文本预览下载声明
课程设计报告
课程设计题目:复数计算器
学生 姓名:
专 业:
班 级:
学 号:
完成实验时间:
实验 地点 :
指导 教师 :
课程设计报告要求:
结构要求:
问题分析:要求用自己的话概括出本课题的内容、功能结构
结构分析:根据问题分析的结果,进一步分析出系统的类结构及相互关系,画UML的类图并描述其内部结构属性及相互关系
现流程分析:概述自己的实现过程:如工程建立流程、类创建流程等
个性功能介绍:应介绍自己在系统中的程序改进与新增的功能模块的意义、价值
课程设计小结:简述自己课程设计的收获
(一):问题描述和要求:
(1):该复数计算器可进行“+”、“-”、“*”、“+=”、“-=”、“*=”、“比较两模的大小”,可识别用户输入“a+bi”格式,
这些可用多态中的对应的运算符重载
(2):可对上面每个功能进行测试并记录最后三次的平均成绩 这可以用一个test()函数实现
(3):把数据写入文件当下次用户输入存在的姓名时把他的数据读出来如果输入的姓名不存在就替换掉,这可以用对应的写入文件和读取去实现。
(二):结构分析、系统分析、画uml图 描述它们的关系
(1):根据问题描述和要求,系统要求该复数计算器有加、减、乘、加等于、减等于、乘等于、对用户进行测试、比较两个复数模长、能够识别客户输入“a+bi”的模式等功能。最后还要求把客户做过的信息(做了多少次加、减、乘、测试、最后三次的平均分、用户名等信息)用文件来保存
(2):既然要具备上面的功能我可以用我学过的多态中的运算符重载来实现还有要把数据存入盘中我可以用文件来对他进行保存文件名为:“xiao.txt”到下一个客户想查信息时可输入姓名进行匹配当新的用户用时可对上次保存的信息覆盖来保存当前的信息这我用系统函数remove()来实现。对于加、减、等功能的实现可以分辨用一个函数来完成,例如加可以用jia()函数完成。做好界面,另外还得要一个结构体来定义一个用户对象并把信息放在里面保存到文件中,这里用结构体可定义全局变量对下面实行有好处。最后在主函数中调用每个函能
的实现。
Uml图:
(三):系统设计
(1):系统的总框架
使用面向对象的程序设计是想进行分析,整个系统涉及一个类的信息和操作。该类为complex:复数类。在必要运算符重载中定义相应的类的对象 。该类所有成员如下:
class Complex //定义一个complex的类
{
private:
double Real,Image;
public:
CComplex(double real=0,double image =0) //构造函数
{
Real=real;Image=image;
}
friend istream operator(istream is,CComplex com ); //重载输入
friend ostream operator(ostream os,CComplex com); //重载输出
CComplex operator+(CComplex com); //加法重载
CComplex operator-(CComplex com); //减法重载
CComplex operator*(CComplex com); //乘法重载
CComplex operator+=(CComplex com); //加法赋值重载
CComplex operator-=(CComplex com); //减法赋值重载
CComplex operator*=(CComplex com); //乘法赋值重载
CComplex operator++(); //自加
CComplex operator--(); //自减
double mod (void); //求复数的模
int operator(CComplex com);
int operator(CComplex com);
int operator!=(CComplex com
显示全部