编写一个程序用单链表存储多项式,并实现两个多项式相加的函数?C/C++语言

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 06:46:12

编写一个程序用单链表存储多项式,并实现两个多项式相加的函数?C/C++语言
编写一个程序用单链表存储多项式,并实现两个多项式相加的函数?
C/C++语言

编写一个程序用单链表存储多项式,并实现两个多项式相加的函数?C/C++语言
/* 多项式加法和乘法示例 */
#include
#include
#include
using namespace std;
//定义多项式的项类
class term {
public:
int coef; //多项式系数
int exp; //多项式指数
//初始化项的系数和指数
term( int c=0,int e=0):coef(c),exp(e){}
};
//定义多项式类
class PolyArith {
private:
list m_poly_list_first; //存储第一个多项式
list m_poly_list_second; //存储第二个多项式
list m_poly_list_result; //用以存储运算结果
//多项式私有成员函数,用以乘法时的调用
list Poly_add(list&poly_list_first,\
list&poly_list_second)
{
list poly_list_result; //用以存储运算结果
list::iterator iter_first = poly_list_first.begin();
list::iterator iter_second = poly_list_second.begin();
//该while循环针对两个链表迭代器都没有指到结尾的情形
while(iter_first != poly_list_first.end()&&\
iter_second != poly_list_second.end())
{
term t_temp;
term t_first = (term)*iter_first;
term t_second = (term)*iter_second;
if(t_first.exp>t_second.exp)
{
poly_list_result.push_back(t_first);
iter_first++;
}
else if(t_second.exp>t_first.exp)
{
poly_list_result.push_back(t_second);
iter_second++;
}
else
{
t_temp.coef=t_first.coef+t_second.coef;
t_temp.exp=t_first.coef;
poly_list_result.push_back(t_temp);
iter_first++;
iter_second++;
}
}
//该for循环针对第一个多项式的迭代器没有指到结尾
//第二个指到结尾的情形
for(;iter_first != poly_list_first.end();iter_first++)
{
poly_list_result.push_back(*iter_first);
}
//该for循环针对第二个多项式的迭代器没有指到结尾
//第一个指到结尾的情形
for(;iter_second != poly_list_second.end();iter_second++)
{
poly_list_result.push_back(*iter_second);
}
return poly_list_result;
}
public:
//输入函数,用以输入多项式
void Poly_input()
{
int n;
cout

编写一个程序用单链表存储多项式,并实现两个多项式相加的函数?C/C++语言 编写MATLAB程序实现多项式拟合 数据结构(C语言)用单链表存储一元多项式,并实现两个多项式的相加运算 求n次多项式的任意阶导数的表达式,编写一个实现求多项式导数的程序. 编写一个程序并画出框图 编写一个C语言程序实现判断任意输入的一个整数是几位数,并求每位的和. 编写一个程序实现求解任意算术表达式的值 编写程序实现下列图形******** 编写一个程序求各种类型数数据的存储长度 C语言矩阵相乘帮忙写一个程序要求:利用动态分配数组方式输入并存储A、B两矩阵,并求出两矩阵相乘结果. 美籍匈牙利数学家冯诺依曼对计算机科学发展所作出的贡献是?A、提出理想计算机数学模型,成为计算机科学理论基础B、是世界上第一个编写计算机程序的人C、提出存储程序工作原理,并设计 C语言:编写一个程序,实现将三个数进行排序,并显示输出..编写一个程序,实现将三个数进行排序,并显示输出.要求:编写一个函数实现将三个数从小到大排序,在主函数中完成对该函数的调用 16.要求编写程序实现:用移位指令将AX中的数乘以10,结果保存在AX寄存器中.17.编写一个宏定义,能把任17.编写一个宏定义,能把任一个存储单元的最低位移至另外一个寄存器的最高位中. 编写一段程序或设计一个函数实现一个方阵以副主对角线进行翻转并利用rand函数随机产生一个5阶方阵进行翻转 编写一个程序,在程序中定义一个函数并调用它,函数的功能是求两坐标点之间的距离,程序要实现如果省略...编写一个程序,在程序中定义一个函数并调用它,函数的功能是求两坐标点之间的距 C语言程序 编写一个函数,计算并输出下列多项式的值:s=1+1/1!+1/2!+3/3!+……+1/n! 定义并实现一个有理数类用C++编写 C语言 、 输入半径R ,并计算圆的面积S 和周长L .3、 编写一个程序实现把小写字母转换成大写字母.比如