- 43
- 0
- 约7.37千字
- 约 17页
- 2018-06-12 发布于贵州
- 举报
C多项式课程设计---多项式的运算
《计算机科学与应用系程序类课程设计》
设计报告书
题 目: 多项式的运算
指导教师: 宋涛
姓 名: 潘彬彬
学 号:
日 期: 2012/5/16
计算机科学与应用系 2011-2012学年第二学期
需求分析
输入部分,要求用户能从屏幕上输入两个一元多项式。如多项式A为:x^3+2x^2+4;多项式B为:-x^3+4x^2+2。
程序通过语句得到这两个字符串,进行解析,分解出系数和指数,存储在不同的线性表LA,LB中。
然后,程序基于线性表LA、LB来实现多项式的加、减、乘、运算。
最终,输出部分将得到的运算结果输出,如上述多项式A和B的和为:6x^2+6。
系统主要功能
用于一元多项式的加减乘运算。
流程图
四、 数据结构设计
1. 定义多项式类class Polynomial;
2. 把多项式的指数和系数结合定义为一个类class PolyNode;
3. 用链表保存多项式listPolyNode L;
五、 类设计
1.多项式的项类
指数、系数可以描述多项式的一项,作为一个整体来存储;
class PolyNode
{
public:
double xishu;//系数
int zhishu;//指数
public:
PolyNode(void){};
~PolyNode(void){};
PolyNode(double xishu, int zhishu)//构造函数,为xishu、zhishu赋值
bool operator (PolyNode b)const//判断两项是否满足小的关系,指数小者小
bool operator (PolyNode b)const //判断两项是否满足大的关系,指数大者大
bool operator== (PolyNode b)const//判断两项是否满足等的关系
};
2.多项式类
在多项式类中,必须有存储多项式各项的线性表,还必须有实现多项式运算的成员函数。
类的定义如下:
class Polynomial//多项式类,其中实现了多项式的加减乘除。
{
private:
listPolyNode L;//用于存放多项式的链表
public:
Polynomial()//构造函数
{};
~Polynomial()//析构函数
{
L.clear();//清空链表
};
void print()//输出多项式
void Insert(PolyNode e) //插入一个结点,使得插入后表中结点仍然按指数有序还要有合并同类项的功能
void Insert(double xishu,int zhishu)
Polynomial operator+(Polynomial b) //重载多项式的加法运算符
Polynomial operator-(Polynomial b) //重载多项式的减法运算符
Polynomial operator*(Polynomial b) //重载多项式的乘法运算符
void Input(Polynomial p) //输入多项式
};
六、 主要算法设计
1.用链表保存两个多项式(listPolyNode L;);
2.将多项式的项封装为一个类(class PolyNode);
3.用运算符重载的方式实现多项式的加减乘运算,创建一个用于遍历的指针对链表进行遍历(listPolyNode::iterator i;),先将指数相同的项的系数相加
if(i-zhishu ==e.zhishu )
{//合并同类项
i-xishu+=e.xishu;
if(i-xishu==0)
L.erase(i);
(即运算之前合并同类项),指数不同按大小顺序插入;
else if(i-zhishu e.zhishu )
L.insert(i,e);
4.减法时将另一个多项式每一项系数乘个-1再相加;
PolyNode temp=*i;
temp.xishu*=-1;
t.Insert(temp);
5.乘法用第一个多项式的每一项与第二个多项式的每一项相乘即系数相乘、指数相加。
for(i=b.L.begin();i!=b.L.end();i++)
for(j=L.begin();j!=L.end();j++)
{
PolyN
您可能关注的文档
- 老年人口腔保健ppt课件.ppt
- 老年人颅脑外伤诊治原则ppt课件图文.ppt
- 老年保健PPT课件.ppt
- 老年养生保健ppt课件.ppt
- 老年保健课 睡眠问题ppt课件.ppt
- 老年康复概论ppt课件.ppt
- 老年房颤抗凝PPT课件.ppt
- 老年人常见疾病护理知识3PPT课件.pptx
- 老年抑郁症的诊疗进展 ppt课件.ppt
- 缺血性脑血管病诊治进展方案课件.ppt
- 全过程工程管理造价咨询工程监理项目服务方案投标方案(技术部分).doc
- 招标代理服务投标技术服务方案(技术方案).doc
- AI大模型与AIGC技术在公安领域的应用解决方案(99页 PPT).pptx
- 工业4.0智能制造数字工厂规划方案.pptx
- 树立社会主义核心价值观.docx
- 三年(2023-2025)中考历史真题分类汇编(全国)专题21 科技文化与社会生活(解析版).docx
- 2025年中考道德与法治真题完全解读(吉林卷).pdf
- 2025年中考道德与法治真题完全解读(安徽卷).pdf
- 三年(2023-2025)中考历史真题分类汇编(全国)专题14 人民解放战争(解析版).pdf
- 三年(2023-2025)广东中考历史真题分类汇编:专题03 中国近代史(八年级上册)(解析版).docx
最近下载
- 2026届四川省成都市石室中学化学高一第一学期期末综合测试试题含解析.doc
- 维修电工技师高级技师理论复习资料.pdf VIP
- 山东省菏泽市2024-2025学年高一下学期期末考试含答案(10科试卷).pdf
- 新员工岗前公司级安全考试(重庆轨道交通-B卷).docx VIP
- 装备修理质量管理课件.pptx VIP
- 螺杆机-海信螺杆式风冷热泵机组.pdf VIP
- 诱导性多功能干细胞研究行业深度调研及发展策略研究报告.docx
- 湖南省长沙市长郡中学2024-2025学年高一上学期期末考试语文试卷(含答案).pdf VIP
- 关于高三综评典型事例摘抄.docx VIP
- 装备修理技术与信息管理.pptx VIP
原创力文档

文档评论(0)