服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - C/C++ - C++使用递归方法求n阶勒让德多项式完整实例

C++使用递归方法求n阶勒让德多项式完整实例

2021-04-04 15:19宾宾琪琪 C/C++

这篇文章主要介绍了C++使用递归方法求n阶勒让德多项式,涉及C++递归算法与浮点数运算的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C++使用递归方法求n阶勒让德多项式的实现方法。分享给大家供大家参考,具体如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/*
* 作 者: 刘同宾
* 完成日期: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++使用递归方法求n阶勒让德多项式完整实例

希望本文所述对大家C++程序设计有所帮助。

延伸 · 阅读

精彩推荐