欢迎来到天天文库
浏览记录
ID:47106356
大小:159.00 KB
页数:22页
时间:2019-08-04
《一元稀疏多项式计算器实验报告(c++编写,附源代码)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一元稀疏多项式计算器实验报告级班年月日姓名学号_1.实验题目 设计一个一元稀疏多项式简单计算器。2.需求分析本程序用VC编写,实现一元浮点系数,整数指数稀疏多项式的创建、两个一元多项式相加、两个一元多项式相减、输出一元多项式。 ①输入的形式和输入值的范围:A.输入指定的数字,以此选择两个多项式的运算方式,运算方式有两个一元多项式相加、两个一元多项式相减。B.创建多项式时,需要输入此多项式,每一项的系数和指数。②输出的形式:每次输入一个完整的多项式后、每次得出多项式运算结果时,会以指定的方式输出多项式。 ③程序所能达到的功能:实
2、现一元稀疏多项式的创建、两个一元多项式相加、两个一元多项式相减、输出一元多项式。④测试数据: 输入数据:A.出现选择两个多项式的运算方式菜单时,输入1(即使两个多项式相加); B.首先输入多项式p的每一项系数和指数,当输入的指数为-5000时,表示该多项式输入完毕,输入的数据依次为:3,3,0,-5000; C.其次输入多项式q的每一项系数和指数,输入数据依次为:2,2,0,-5000。输出结果:多项式q+p的结果为:多项式为:3x3+2x23.概要设计1)为了实现上述程序功能,需要定义多项式结点的抽象数据类型:clas
3、sTerm{ 数据对象:floatcoef;该数据对象为多项式一项中的系数。intexp;该数据对象为多项式一项中的指数。Term*link;该数据对象为指向下一个多项式结点的指针。第22页,共22页基本操作: A.Term(floatc,inte) 初始条件:无 操作结果:初始化多项式结点对象,将c赋值给该结点的数据成员coef(表示系数),将e赋值给该结点的数据成员exp(表示指数),将该结点的数据成员link赋值为0。B.Term(floatc,inte,Term*next)初始条件:无 操作结果:初始化多项式结点对象
4、,将c赋值给该结点的数据成员coef(表示系数),将e赋值给该结点的数据成员exp(表示指数),将next赋值给该结点的数据成员link(link表示指向下一个多项式结点的指针)。C.Term*InsertAfter(floatc,inte)初始条件:存在一个多项式结点 操作结果:为一个新的多项式项申请结点,并且用Term进行初始化,把this->link赋值给新项结点的link;并且把该新项结点的指针赋值给this->link,最后返回一个指向新项结点的指针。D.friendostream&operator<<(ostream&
5、,constTerm&)初始条件:存在一个多项式结点 操作结果:输出一个多项式结点中存放的该项的系数和指数,输出格式为coefX^exp,其中coef为该结点所存储的系数,exp为该结点所存储的指数。}1)多项式的抽象数据类型如下:classPolynominal{ 数据对象:Term*theList;该数据对象是多项式的头指针。 基本操作: A.Polynominal() 初始条件:无 操作结果:初始化多项式对象,构造一个多项式的空的单循环链表。B.~Polynominal()初始条件:存在一个多项式对象 操作结
6、果:当多项式对象的生命周期结束后,释放其所占用的内存空间。C.voidAddTerms(istream&in);初始条件:存在一个多项式对象 操作结果:让用户输入多项式的每一项,构造单循环链表。D.voidOutput(ostream&out)const;第22页,共22页初始条件:存在一个多项式对象操作结果:调用Term类上重载的<<操作,输出多项式的每一项。E.voidPolyAdd(Polynominal&r);初始条件:存在两个多项式对象操作结果:将this指针所指向的多项式与r多项式相加,相加的结果存放在this所指向的
7、多项式中。F.voidOpposeCoef();初始条件:存在一个多项式对象操作结果:将this指针所指向的多项式每一项的系数取反。G.voidPolySubtract(Polynominal&r);初始条件:存在两个多项式对象操作结果:调用OpposeCoef函数,将r多项式的每一项系数取反;再调用PolyAdd函数,将r与this指针所指向的多项式相加,即得到this指针所指向多项式减去r多项式的结果。H.friendostream&operator<<(ostream&,constPolynominal&)初始条件:存在一个多
8、项式对象操作结果:调用Output函数,将一个输出流对象返回I.friendistream&operator>>(istream&,Polynominal&);初始条件:存在一个多项式对象操作结果:调用AddTerms函数,将一个输入
此文档下载收益归作者所有