本文實例講述了C++使用遞歸方法求n階勒讓德多項式的實現方法。分享給大家供大家參考,具體如下:
/** 作 者: 劉同賓* 完成日期:2012 年 11 月 24 日* 版 本 號:v1.0* 輸入描述:* 問題描述: 用遞歸方法求n階勒讓德多項式的值。。* 程序輸出:* 問題分析:略* 算法設計:略*/#include<iostream>using namespace std;int main(){ double p(double,double); double s,n,x; cout<<"請輸入n與x的值:"; cin>>n>>x; s=p(n,x); cout<<"則多項式的值為:"<<s<<endl; return 0;}double p(double n,double x){ double s; // 函數名與變量名不能相同。 if(n==0) { s=1; } else if(n==1) { s=x; } else { s=((2*n-1)*x-p((n-1),x)-(n-1)*p((n-2),x))/n;//遞歸。上機指導上寫的是s=((2*n-1)*x*p((n-1),x)-(n-1)*p((n-2),x))/n 當輸入3 4時,結果是154 } return s;}
希望本文所述對大家C++程序設計有所幫助。