好文档 - 专业文书写作范文服务资料分享网站

一元符号多项式的四则运算

天下 分享 时间: 加入收藏 我要投稿 点赞

C++开放项目实验报告

题目: 一元符号多项式四则运算

姓名: 指导老师: 学号: 班级:

一、 内容总结

1. 功能要求

用所学C++知识编程实现两个一元符号多项式的加法,减法和乘法运算。

2. 算法概要设计

① 结点插入函数

void Insert (PNode *temp);

② 多项式的创建函数 void CreatPoly();

③ 赋值运算符的重载

Polynomail& operator = (const Polynomail &p1);

④ 一元符号多项式的加法

Polynomail& operator + (const Polynomail &p);

⑤ 一元符号多项式的减法 Polynomail& operator - (Polynomail &p);

⑥ 一元符号多项式的乘法

Polynomail& operator * (const Polynomail &p);

3. 应用技巧

① 利用Insert()插入函数规范多项式的输入问题,进行同类项的合并和不同类项间的排序问题,使得到有序的链表,方便后续的运算 ② 对赋值、加、减和乘运算符进行重载,赋予其新的意义,进行多项式间的四则运算。 ③ 发现函数间联系,可以减少代码的长度。巧妙利用Insert()函数和加运算符重载函数,方便乘法和减法等代码编写。

二、 实验成果

1. 输入要求

按提示一次输入多项式各项的系数和指数,建立多项式。如下所示: 系数,指数:1,2 系数,指数:3,4

系数,指数:0 4(以输入系数为零的项结束创建) 创建结果为:1x^2+3x^4

根据自己的需要选择输入功能序号进行运算,如选择数字2进行加法运算

2. 输出样例

总体上各项是按照输入的方法进行输出,如果指数为零只输出系数,如 果系数为零,那么该项不输出,如果系数为负数,那么两项间“+”变“-”。 以上述输入为例创建的结果为:1x^2+3x^4。 如果另一个多项式为:-1-2x^6,

那么加法运算后的结果为:-1+1x^2+3x^4-2x^6 3. 主要代码展示:

//**** c++开放实验项目**** //一元符号多项式的四则运算 #include using namespace std; struct PNode{

PNode(double c=0,int e=-1){ coef=c; expn=e; next=NULL;} double coef; int expn;

PNode *next; };

class Polynomial{ public: Polynomial(){poly=new PNode;} Polynomial(Polynomial &p); void Print(); ~Polynomial(); void Insert (PNode *temp); void CreatPoly(); Polynomial& operator = (const Polynomial &p); Polynomial& operator + (const Polynomial &p); Polynomial& operator - (Polynomial &p); Polynomial& operator * (const Polynomial &p); private: PNode *poly; };

//析构函数

Polynomial::~Polynomial(){ PNode *pt=poly->next; while (pt){ poly->next=pt->next; delete pt; pt=poly->next;

一元符号多项式的四则运算

C++开放项目实验报告题目:一元符号多项式四则运算姓名:指导老师:学号:
推荐度:
点击下载文档文档为doc格式
8ejsx0iszb9acj39qpyw5s23r4b08q00ep2
领取福利

微信扫码领取福利

微信扫码分享