一元多项式的加减求导运算算法(数据结构算法)

一元多项式的加减求导运算算法(数据结构算法)

ID:27586121

大小:404.18 KB

页数:20页

时间:2018-12-04

一元多项式的加减求导运算算法(数据结构算法)_第1页
一元多项式的加减求导运算算法(数据结构算法)_第2页
一元多项式的加减求导运算算法(数据结构算法)_第3页
一元多项式的加减求导运算算法(数据结构算法)_第4页
一元多项式的加减求导运算算法(数据结构算法)_第5页
资源描述:

《一元多项式的加减求导运算算法(数据结构算法)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、实验题目:一元多项式运算班级:13级数学一班姓名:张保吕学号:2013433037tl期:2014—10—09一、需求分析1.问题描述;设计一个简单的一元稀疏多项式加减及求导运算器。2.基本要求的功能要求;(1)输入多项式吋可以按任意次序输入各项的数据(输入并建立多项式A与B),不必按指数有序:在算法屮实现建立按指数有序的多项式。(2)计算多项式A与B的和,即建立多项式A+B。(3)按照指数升序次序,输出多项式A、B、A+B。(4)计算多项式A与B的差,即建立多项式A_B;(5)计算多项式A的导函数A'。3.测试数据。(1)(x+3x6-8.6x11)+(6-3x

2、6+21x9)=6+x+21x9-8.6x11(2)(3x_3-x+4.1x2-1.2x9)+(-3x^-5.1x2+7.8x,2)=-x-x2-1.2x9+7.8x12(3)(x+x3)+(—x—x3)=0(4)(x+x2+x3)+0=x+x2+x3(5)(x+x2+x3)—(x+x2+x3)=0(6)(x+x2+x3)'=l+2x+3x2二、概要设计1.本程序所用的抽象数据类型的定义;typedefstructpnodedoublecoef;/*系数域*/intexp;/*指数域*/structpnode*next;/*指针域,*/}polynode,*pol

3、ylink;//按指数升序排列//初步整理(合并多项式,并删除系数为零的式子)//加法运算//将减法统归为加法//求导函数//输出显示//菜单函数polylinkinsert_list(polylinkh,charo);//输入多项式polylinkorder_list(polylinkh);polylinksimply_list(polylinkh);polylinkadd(polylinka,polylinkb);polylinkopposite(polylinkb);polylinkderivative(polylinka);voidlist_display

4、(polylinkh,charo);voidindex();2.模块划分。1)主函数模块。2)加法运算模块3)减法运算模块4)导数模块1.主模块的流程及各子模块的主要功能;三、详细设计1.采用C++语言定义相关的数据类型;typedefstructpnode{doublecoef;/*系数域*/intexp;/*指数域*/structpnode*next;/*指针域}polynode,*polylink;CoefExp*next系数域指数域指针域1.写出各模块的伪码算法;voidindex()//菜单函数。{cout«"cout«"cout«Hcout«”cout

5、«n)polylinkinsert_list(polylinkh,charo){h=newpolynode;doublecoefl;intnum,expol;polylinktemp;polynode*data;temp=h;h->next=NULL;//头结点cout«"多项式n«o«"的项数:";cin»num;for(inti=l;i<=num;i++){COUt«

6、•请输入第"《1«”项"《611<11;COUt«"系数:";cin»coef1;cout«"指数:";cin»expol;data=newpolynode;data->coef=coefl;d

7、ata-〉exp=expol;data-〉next=NULL;temp->next=data;temp=data;}returnh;}polylinksimply_list(polylinkh)一元多项式运算n«endl«endl;1.一元多项式加法n«endl;2.—元多项A减法'’《611(]1;3.—元多项式导数n«endl;0.结束"<next;while

8、(q){if(q->exp==p->exp)r=q;q=q->next;p->coef+=r-〉coef;k->next=r->next;deleter;}else{q=q->next;k=k-〉next;}}p=p-〉next;}k=h;q=h-〉next;while(q){if(q->coef==0){r=q;q=q->next;k->next=r-〉next;deleter;}elseq=q->next;k=k->next;returnh;}//显示多项式voidlist_display(polylinkh,charo){polylinkp;doubleco

9、ef1;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。