定义Legendre多项式:
C++实现:
#include<iostream>
using namespace std;
float Legendre(float x,int n)
{
if(n==0)
return 1;
if(n==1)
return x;
if(n>1)
return ((2*n-1)*x*Legendre(x,n-1)-(n-1)*Legendre(x,n-2))/n;
}
int main()
{
float x,y;int n;
cin>>x>>n;
y=Legendre(x,n);
cout<<y;
}
测试结果: