gai级通信工程专业面向对象课程设计要求与指导.docVIP

gai级通信工程专业面向对象课程设计要求与指导.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
gai级通信工程专业面向对象课程设计要求与指导.doc

课 程 设 计 任 务 书 学院 信息科学与工程 专业 通信工程 学生姓名 学号 设计题目 静态查找类模板的设计与实现 内容及要求: 要求采用C++语言建立一维数组数据结构的模板类,使一维数组中的数据元素可以是char, int, float等多种数据类型,并对数组元素进行静态查找。主要完成如下功能: 实现数组数据的输入和输出; 对数组进行顺序查找; 对有序数组进行折半查找(递归算法); 对有序数组进行折半查找(非递归算法); 将每种查找功能作为类的成员函数实现,编写主函数测试上述查找功能。 进度安排: 第1周:分析题目,查阅课题相关资料,进行类设计、算法设计; 第1周:程序的设计、调试与实现; 第19周:程序测试与分析,撰写课程设计报告,进行答辩验收。 指导教师(签字): 年 月 日 学院院长(签字) 年 月 日 目 录 1 需求分析 - 1 - 2 算法基本原理 - 1 - 3 类设计 - 2 - 4 详细设计 - 3 - 4.1 类的接口设计 - 3 - 4.2 类的实现 - 5 - 4.3 主函数设计 - 10 - 5 DOS界面程序运行结果及分析 - 11 - 5.1 程序运行结果 - 11 - 5.2运行结果分析 - 12 - 6 基于MFC的图形界面程序开发 - 13 - 6.1 基于MFC的图形界面程序设计 - 13 - 6.2 程序测试 - 17 - 6.3 MFC程序编写总结 - 19 - 7 参考文献 - 19 - 1 需求分析 (1)(2)2 算法基本原理3 类设计 从上面的算法分析可以看到,本设计面临的计算问题的关键是矩阵运算。可以定义一个矩阵类Matrix作为基类,然后由矩阵类派生出线性方程组类Linequ。矩阵类Matrix只处理n×n类型的方阵,方阵用一个一维数组来存放,矩阵类Matrix的数据成员包括数组的首地址和n,矩阵类Matrix的功能有设置矩阵的值SetMatrix( )和显示矩阵PrintM( )等。 从问题的需要来看,线性方程组类Linequ的数据除了由矩阵类Matrix继承过来用于存放系数矩阵A的成员外,还应该包括存放解向量x和方程右端向量b的数组首地址。线性方程组类Linequ的主要操作有设置SetLinequ( )、显示PrintL( )、求解Solve( )及输出方程的解showX( )。可以通过定义线性方程组类Linequ的新增成员函数来实现这些针对方程组求解的功能。 矩阵类Matrix和线性方程组类Linequ的组成及相互关系如图1所示。 图1 Matrix类和Linequ类的派生关系的UML图形表示 在线性方程组的求解过程中,在线性方程组类Linequ的成员函数Solve中需要访问基类矩阵类Matrix的数据成员,利用公有继承方式派生,同时将Matrix类中的数据成员的访问控制设置为保护类型。这样,经过公有派生之后,基类的保护成员在派生类中依然是保护成员,可以被派生类的成员函数访问。 4 详细设计 整个程序分为三个独立的文档,Linequ.h文件中包括矩阵类Matrix和线性方程组类Linequ的声明,Linequ.cpp文件中包括这两个类的成员函数实现文件;main.cpp文件包括程序的主函数,主函数中定义了一个类Linequ的对象,通过这个对象求解一个四元线性方程组。 4.1 类的接口设计 //Linequ.h文件,实现类的声明 #include iostream #include cmath using namespace std; class Matrix //基类Matrix声明 { public: //外部接口 Matrix(int dims=2); //构造函数 ~Matrix(); //析构函数 void SetMatrix(double *rmax); //矩阵赋初值 void PrintM(); //显示矩阵 protected: int index; //方阵的行数 double* MatrixA; //矩阵存放数组首地址 }; class Linequ:public Matrix //公有派生类Linequ声明 { public: //外部接口 Linequ(int dims=2); //构造函数 ~Linequ(); //析构函数 void SetLinequ(double *a, double *b); //方程赋值 void PrintL(); //显示方程 int Solve(); //全选主元高斯消去法求解方程 void ShowX(); //显示方程的解 private: //私有数据 dou

文档评论(0)

000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档