一元多项式计算器

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一元多项式计算器

目录

摘要 (1)

1绪论 (1)

2系统分析 (1)

2.1功能需求 (1)

2.2数据需求 (1)

2.3性能需求 (1)

3总体设计 (2)

3.1系统设计方案 (2)

3.2功能模块设计 (2)

4详细设计 (3)

4.1建立多项式 (4)

4.2多项式相加 (4)

4.3多项式相减 (5)

4.4多项式相乘 (5)

4.5计算器主函数 (6)

5调试与测试 (7)

5.1调试 (7)

5.2测试 (8)

6结论 (9)

结束语 (9)

参考文献 (9)

附录1-用户手册 (10)

附录2-源程序 (12)

摘要

随着生活水平的提高,现代科技也日益发达。日常生活中多位计算再所难免,因此设计一个简单计算器可解决许多不必要的麻烦。

开发这样一个程序主要运用了C的结点,链表等方面知识。系统主要实现了多项式的建立,多项式的输入输出,以及多项式加减乘等运算。

报告主要从计算器的程序段,对输入输出数据的要求,计算器的性能,以及总体的设计来介绍此计算器程序的实现过程。

关键词:多项式;链表;结点

1绪论

随着日益发达的科技,计算器已应用于各行各业。设计一个计算器需要运用C中多方面知识,更是以多项式的建立,输入输出,以及结点,链表为主。(扩充)

任务书。。。。。

2系统分析

2.1 功能需求

多项式的建立多项式输入输出多项式加减乘等运算

2.2数据需求

在输入过程中,首先要确定输入的数据,数据不能是字母,只能是数字。不能连续输入数据,必须按要求配以空格输入要计算的数据。

(1) 链节节点数字

(2) 数字

2.3 性能需求

系统必须安全可靠,不会出现无故死机状态,速度不宜过慢。

3总体设计

3.1系统设计方案

采用菜单设计,选择你需要的功能,用单链表储存你输入的数据。

(1) 菜单

菜单包括计算器加减乘等功能的选择

(2) 文件保存方式

运用带头节点的单链表储存多项式

(3) 抽象数据类型定义

主要定义多项式的系数和指数。系数项用浮点类型定义,指数项用整型定义

(4) 存储结构

采用链式结构,建立链表储存输入的多项式

(5) 算法设计

运用链表知识,建立链表,给链表分配一定量的存储空间,查找链表,插入链表和链表的连接

3.2功能模块设计

图1功能模块图

(1)建立多项式模块

该模块分为

①建立多项式

②输入多项式

(2)多项式相加模块

该模块是将输入的多项式实现相加功能。

(3)多项式相减模块

该模块是将输入的多项式实现相减功能。

(4)多项式相乘模块

该模块是将输入的多项式实现相乘功能。

4详细设计

一元多项式计算器主要分为4大部分,多项式建立,多项式加法,多项式减

法和多项式乘法。多项式的建立主要需要建立新链表,并分配给这个新链表一定量的存储空间,分配的存储空间内进行运算;多项式加减乘等运算主要运用了链表的建立,链表存储空间分配,链表的查找,插入与连接进行计算。

4.1 建立多项式

此阶段是多项式的建立,可以对计算器进行输入,输出等功能。主要运用链表方面的知识如图2所示。

N

图2多项式建立

4.2多项式相加

此阶段是计算器的加法运用功能,对你输入的多项式进行相加计算,主要运用了链表,及链表的插入等知识,如图3所示。

图3多项式相加

4.3多项式相减

此阶段是计算器的减法运用功能,对你输入的多项式进行相减计算,主要运用了链表,链表查询,及链表的插入等知识,如图4所示。

图4多项式相减

4.4多项式相乘

此阶段是计算器的乘法运用功能,对你输入的多项式进行相乘计算,主要运用了链表,链表

查询,及链表的插入等知识,如图5所示。

图5多项式相乘

4.5计算器主函数

此阶段是计算器的功能选择,对你要进行的操作选择相应的程序,主要运用了链表,链表查询,链表连接及链表的插入等知识,如图6所示。

图6计算器主函数

5调试与测试

5.1 调试

调试过程主要是运行编制好的程序,然后遇到错误后根据系统的提示,找到相关的问题所在。本系统调试过程中遇到的主要问题、原因和解决方法如下面介绍。

(1)系统提示的错误

error C2065: 'addPLOY' : undeclared identifier

addPLOY没有被明确的定义。

到程序段里仔细寻找addPLOY,并将其定义。

(2)cannot open Debug/Cpp1.exe for writing

执行窗口没关闭就修改程序段

关闭只胸窗口后从新执行程序。

5.2 测试

软件测试是软件生存期中的一个重要阶段,是软件质量保证的关键步骤从用户的角度来看,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,所以软件测试应该是“为了发现错误而执行程序的过程”。或者说,软件测试应该根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误或缺陷。过度测试则会浪费许多宝贵的资源。到测试后期,即使找到了错误,然而付出了过高的代价。

测试数据过程如下。

(1)输入功能测试

输入数据1:2 3 0 0

预期结果:2.000000x^3

运行结果: 2.000000x^3

说明:符合输入的要求

输入数据2:a b 0 0

预期结果:a.000000x^b

运行结果:死循环

相关文档
最新文档