课设任务书3软件技术基础_第1页
课设任务书3软件技术基础_第2页
课设任务书3软件技术基础_第3页
课设任务书3软件技术基础_第4页
课设任务书3软件技术基础_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、南京工程学院课程设计任务书 课 程 名 称 软件技术基础 院(系、部、中心) 电力工程学院 专 业 电气工程及其自动化(电网监控技术)班 级 监控091 起 止 日 期 2010 年12月19 日至23日指 导 教 师 陈锦涛 1课程设计应达到的目的该实践教学是软件设计的综合训练,包括问题分析、总体结构设计、用户界面设计、程序设计基本技能和技巧。学生通过课程设计加深理解课堂教学内容,使学生在课程设计中逐步提高程序设计能力、算法分析能力、和调试能力;培养学生解决实际问题的能力,自主学习和独立创新的精神。提高学生的科技论文写作能力。2课程设计题目及要求题目:一元多项式计算1问题描述已知 和 ,并且

2、在 A ( x ) 和 B ( x ) 中指数相差很多,求 M ( x ) = A ( x ) + B ( x ) 、M ( x ) = A ( x ) - B ( x )、M ( x ) = A ( x ) B ( x )2. 基本要求:(1)设计存储结构表示一元多项式; (2)设计算法实现一元多项式相加,相减,相乘运算;(3)要求输出结果的升幂和降幂两种排列情况;(4)分析算法的时间复杂度和空间复杂度。 3设计思想 一元多项式求和实质上是合并同类项的过程,其运算规则为: (1)若两项的指数相等,则系数相加;(2)若两项的指数不等,则将两项加在结果中。 一元多项式 由 n +1 个系数唯一确

3、定,因此,可以用一个线性表 ( a 0 , a 1 , a 2 , a n ) 来表示,每一项的指数 i 隐含在其系数 a i 的序号里。但是,当多项式的指数很高且变化很大时,在表示多项式的线性表中就会存在很多零元素。一个较好的存储方法是只存非零元素,但是需要在存储非零元素系数的同时存储相应的指数。这样,一个一元多项式的每一个非零项可由系数和指数唯一表示。 由于两个一元多项式相加后,会改变多项式的系数和指数,因此采用顺序表不合适。 采用单链表存储,则每一个非零项对应单链表中的一个结点,且单链表应按指数递增有序排列。 结点结构如图所示。 coefexpnext其中,coef :系数域,存放非零项

4、的系数;exp :指数域,存放非零项的指数; next :指针域,存放指向下一结点的指针。 将两个一元多项式用两个单链表存储后,如何实现二者相加呢? 设两个工作指针 p 和 q ,分别指向两个单链表的开始结点。通过对结点 p 的指数域和结点 q 的指数域进行比较进行同类项合并,则出现下列三种情况: (1)若 p - exp exp ,则结点 p 应为结果中的一个结点; (2)若 p - expq - exp ,则结点 q 应为结果中的一个结点,将 q 插入到第一个链表中结点 p 之前; (3)若 p - exp=q - exp ,则结点 p 与结点 q 为同类项,将 q 的系数加到 p 的系数

5、上。若相加结果不为 0 ,则结点 p 应为结果中的一个结点,同时删除结点 q ;若相加结果为 0 ,则表明结果中无此项,删除结点 p 和结点 q 。 3课程设计任务及工作量的要求包括课程设计计算说明书、图纸、实物样品等要求(1)分析问题,给出数学模型,设计相应的数据结构。(2)算法设计在已经选择好数据结构的前提下,为解决问题设计算法。确定所需模块对于稍复杂的程序设计,要充分利用模块化程序设计方法,自顶向下,逐步细化,在整体思路确定的情况下,考虑所需模块数,各模块完成功能以及模块之间的数据联系和调用关系。各子模块功能描述给出主要模块的算法描述,用流程图或伪代码表示。模块之间的调用关系给出算法各模

6、块之间的关系图示(3)源程序清单(草稿)为了提高工作效率,充分利用上机调试程序的时间,要求学生在上机之前给出源程序清单。(4)用测试数据去验证算法及程序的正确性正序、逆序、随机数(5)算法分析经过上机调试,源程序运行正确,并且实现算法要求的功能,解决课程设计题目中给出的问题后,分析算法的时间复杂度和空间复杂度。(6)提供的主程序可以象一个应用系统一样有主窗口,通过主菜单和分级菜单调用课程设计中要求完成的各个功能模块,调用后可以返回到主菜单,继续选择其他功能进行其他功能的选择。(7)按照课程设计说明书的格式规范撰写课程设计说明书,其中正文包括: 需求分析:对系统要实现的功能进行简明扼要的描述。

7、概要设计:根据功能描述,建立系统的体系结构,即将整个系统分解成若干子功能模块,并用框图表示各功能模块之间的衔接关系,并简要说明各模块的功能。 详细设计:详细说明各功能模块的实现过程,算法、技巧等。重点功能部分要加上清晰的程序注释。 效果及存在问题:说明系统的运行效果(附上运行界面图片)、存在哪些不足以及预期的解决办法。 心得体会:谈谈自己在课程设计过程中的心得体会。(8)课程设计说明书用A4纸统一打印,装订按学校的统一要求完成。(9)课程设计的程序以软盘形式上交,文件夹名称为学生姓名及学号的组合,上交成果中要有你的磁盘文件说明(见下图)。未经指导教师许可或无故不到者,缺勤率达50%的学生不能参

8、加答辩。 答辩时,设计者在5分钟内阐述自己的设计过程和最终结果,突出设计中遇到的主要问题和解决方法,然后回答教师提问。每位学生答辩总时间一般不超过15分钟。 4主要参考文献1 谭浩强. C+程序设计M . 北京:清华大学出版社,2004.2 吴乃陵C+程序设计实践教程M北京: 高等教育出版社,2003.3 4 5课程设计进度安排起 止 日 期工 作 内 容2011年 12月17日18日2011年12月19 日2011年12月20 日2011年12月21 日2011年12月22 日2011年12月23 日 熟悉任务,设计算法,编写源程序上机调试上机调试上机调试上机调试考核验收6成绩考核办法课程设计成绩的评定:根据设计的完成情况、程序的编制质量、独立设计能力以及答辩情况综合衡量,由答辩小组讨论决定。原则上按以下公式计算: 课程设计成绩工作表现30%设计成果40%考核测评30% 工作表现:独立工作能力及设计过程的表现。占总成绩的30%。设计成果:设计说明书(计算书、论文)、图纸、程序、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论