c语言多项式112

这个其实很简单。我们需要三个数组(暂且考虑int数组),长度都是10,分别存储多项式1和2以及计算结果。初始化为全0。根据你的假设输入。最后三个数组是:

多项式1:C语言中的一维多项式求值 计算多项式p (x) = a (n-1) x (n-1) a (n-2) x (n-2)...a1xa0

在指定点x的函数值。

算法:

首先,多项式以如下嵌套方式表示:

p(x)=(...((a(n-1) a(n-2))x a(n-3))x....a1)x A0;

然后由内向外依次计算(因为x已知)得到递推公式:

U(n-1)=a(n-1)

U(k)= U(k ^ 1)x a(k);K=n-2,n-3......1,0;

然后计算k=0时,得到的U(0)就是所需值。

下面是用C语言实现的:

Double plyv (double a [],double x,int n)//a []是多项式的系数,n是数组的长度。

{

双u;//总是存储递归结果;

int I;

for(I = n-2;I = 0;我-)

{

u = u * x a[I];

}

return u;

}

#包括

int main()

{

双a[3]={2,3,4 };//根据多项式的形式定义数组的长度和个数。如果没有x项,视觉系数为0;

双s;

双x;

s=plyv(a,x,3);//这是最终结果;

printf("%f ",s);

返回0;

}

解决这个问题的关键是找到递归关系,然后根据递归关系求解。

用C语言链表实现多元多项式及其乘加。 用C语言链表实现多项式,比如f (x _ {i,k} {l}) = 3x _ {1,2} 2x _ {3,2} x _ {1,3} x _ {4,3} 3(变量x _ {i,k} {l多项式需要键盘输入,单项式(节点为x _ {i,k} {l})存储在链表中,多项式(节点为单项式)存储在链表中。编写三个函数实现多项式的加法和乘法,输出多项式。

相关文章

发表新评论