还是书上的题目,很简单,用数组实现了一下。好久没写代码,一写发现好多错误。实现两个多项式的加法和乘法。多项式的输入按照次数从0开始往高输入即可,每次输入以回车符号表示结束。这个细节以前以为很简单,仔细一想还有点意思,费了点脑筋才实现(好吧,我弱爆了~~)。当然也可以定义为用户自行指定某个幂的系数,这很简单,我就偷懒了。
输入输出示例
输入:1 3 5
4 5 7
输出:First Polynomial is:1X^0+3X^1+5X^2
Second Polynomial is:4X^0+5X^1+7X^2
The Sum is:5X^0+8X^1+12X^2
The Multi is:4X^0+17X^1+42X^2+46X^3+35X^4
//using Array to achive polynomial
#include<iostream>
#include<stdio.h>
using namespace std;
//define the maxdegree is 50
struct Polys;
typedef struct Polys *Polynomial;
const int MaxDegree=50;
//the struct of polynomial
struct Polys
{
double CoeffArray[MaxDegree+1];
int HighPower;
};
//initialize of polynomial
void ZeroPolynomial(Polynomial Poly)
{
for(int i=0;i