早教吧 育儿知识 作业答案 考试题库 百科 知识分享

一元多项式简单的计算器(数据结构C++).只求大神写下减法代码.我已经给出了加法代码,在此基础.voidaddPoly(Polynomial&A,Polynomial&B){//A和B为多项式A(x)和B(x)头指针//利用两个多项式结点构成

题目详情
一元多项式简单的计算器(数据结构C++).只求大神写下减法代码.我已经给出了加法代码,在此基础.
void addPoly( Polynomial &A,Polynomial &B)
{ //A和B为多项式A(x)和B(x)头指针
//利用两个多项式结点构成“和多项式”,其头指针仍然为A
Polynomial pa=A; //指针pa始终指向qa的前驱结点
Polynomial qa=A->link;
Polynomial pb=B; //指针pb始终指向qb的前驱结点
Polynomial qb=B->link;
Polynomial temp;
while(qa&&qb)
{
if(qa->expexp) //第一种情况
{
pa=qa;
qa=qa->link;
}
else if(qa->exp>qb->exp) //第二种情况,将结点qb插入到qa之前
{
temp=qb->link;
pa->link=qb;
qb->link=qa;
pa=qb;
qb=temp; //在多项式链表B中移走了一个结点到A
pb->link=qb;
}
else //第三种情况
{ //指数相同,则系数相加
qa->coef=qa->coef+qb->coef;
if(qa->coef==0) //系数为0.删除结点qa
{
pa->link=qa->link;
delete qa;
qa=pa->link;
}
else //系数不为0,作为结果项保留
{
pa=qa;
qa=qa->link;
}
pb->link=qb->link; //无论系数是否为0,都删除结点qb
delete qb;
qb=pb->link;
}
}
if(qb)
pa->link=qb; //将结点qb链接在表A的后面
delete B; //释放表B的头结点所占空间
}//addPoly
▼优质解答
答案和解析
有了加法,减法还用写吗?
直接把参数B中的所有项的系数变作相反数,然后按加法处理
多一步转换而已.
看了 一元多项式简单的计算器(数据...的网友还看了以下:

[4].下列编码中,不属于汉字输入码.A点阵码B区位码C全拼输入码D五笔字型码  2020-05-17 …

邮政编码的数学题某个信封上的邮政编码是0-5这六个不同的数组成的六位数,现有四个编码如下:(A):  2020-05-19 …

如图所示的滑轮组,挂上钩码a、b后,恰好静止,若不计动滑轮和绳子的自重及摩擦力的大小,在a、b下面  2020-06-20 …

条码开头数字的含义我买橄榄油的时候,服务员说条码头一位6的是国产的,8是进口的。结果我又发现有3、  2020-07-05 …

在所有首位不为0的八位数电话号码中,任取一个电话号码,头两位数码至少有一个不超过8的概率是()A.  2020-07-12 …

如图是照相机镜头成像原理示意图。在图中所标的a、b、c三点中,点表示凸透镜的焦点。吴力在家里的阳台上  2020-11-20 …

手机号码开头数字,是以三个数读,还是以四个数读?我们每天都在使用手机,每天也在拨打着手机号码,现在的  2020-11-20 …

一道物理题.有一种为2.94牛的木头体积为600立方厘米在上面放一个砝码木头恰好没入,那么砝码的重为  2020-11-21 …

编码电路和译码电路中,()电路的输出是二进制代码.A.编码B.译码C.编码和译码D.以上都错没有参考  2020-11-23 …

如图①,在第一个天平上,砝码A的质量等于砝码B加上砝码C的质量;如图②,在第二个天平上,砝码A加上砝  2020-11-25 …