云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 多项式加法实验报告

多项式加法实验报告

  • 62 次阅读
  • 3 次下载
  • 2025/6/8 3:30:26

out<<*m;} //然后输出该项 else if(m->coef<0) //如果系数小于0

out<<*m; //直接输出该项 }

cout<

void Polynominal::PolyAdd(Polynominal &r) { //将多项式r加到多项式this上 Term *q,*q1=theList,*p; //q1指向表头节点

p=r.theList->link; //p指向第一个要处理的节点

q=q1->link; //q1是q的前驱,p和Q就是指向当前要进行比较的项 while(p->exp>=0) // 对r的单循环链表进行遍历, 直到全部节点处理完毕 {

while(p->expexp) { // 跳过q->exp的项 q1=q; q=q->link; }

if(p->exp==q->exp) { //当指数相等时相加 q->coef=q->coef+p->coef;

if (q->coef==0) { //若相加后系数为0,则删除p q1->link=q->link; delete (q);

q=q1->link; // 重置q指针 } else {

q1=q; q=q->link; //若相加后系数不为0,则移动q1和q } } else

q1=q1->InsertAfter(p->coef,p->exp); //p->exp>1->exp的情况 p=p->link; // 以p的系数和指数生成新节点,插入q1后 } }

ostream & operator <<(ostream &out,const Polynominal&x) { x.Output(out); return out; }

istream & operator >>(istream &in,Polynominal &x) { x.AddTerms(in); return in; }

Polynominal & operator +(Polynominal &a, Polynominal &b) { a.PolyAdd(b); return a; } int main( ) //主函数 {

Polynominal p,q,q1; cin>>p,cout<>q,cout<

7

三、 测试数据和结果分析

第一组: 第二组 第三组:

输入: 输入: 输入: 9 5 1 2 3 14 4 3 -1 1 -8 8 -2 2 0 -1 6 2 6 0 -1 2 2 0 0 -1 1 1 0 -1 10 9 0 -1 2 10 -3 3 4 8 2 2 -6 2 0 -1 0 -1 输出: 9X^5+4X^3-2X^2+6 X^2-X 3X^14-8X^8+6X^2+2 10X^9-3X^3+2X^2 -X^2+X 2X^10+4X^8-6X^2 10X^9+9X^5+X^3+6 0 3X^14+ 2X^10+4X^8+2

四、 总结

输出:输出:

8

搜索更多关于: 多项式加法实验报告 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

outlink; //p指向第一个要处理的节点 q=q1->link; //q1是q的前驱,p和Q就是指向当前要进行比较的项 while(p->exp>=0)

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com