求N阶勒让德多项式的值的问题
求N阶勒让德多项式的值,递归公式为
Pn(x)=1,(n=0);Pn(x)=x,(n=x);Pn(x)=((2*n-1)-Pn-1(x)-(n-1)*Pn-2(x))/n
可不知不得结果.可以运行,但不得结果.
#include<stdio.h>
float p(float x,int n)
{
float v;
if (n==0)
v=1;
else if (n==1)
v=x;
else
v=((2*n-1)*x*p(x,(n-1))-(n-1)*p(x,(n-2)))/n;
return (v);
}
void main()
{
float x;
int n;
printf("please input numbers :");
scanf ("%f%d",&x,&n);
printf("the retults is %f",p(x,n));
}