C语言习题 求n阶勒让德多项式
2015-12-27 16:55
232 查看
题目描述
用递归方法求n阶勒让德多项式的值,递归公式为n=0
pn(x)
=1
n=1 pn(x)
=x
n>1 pn(x)
=((2n-1)*x* pn-1(x)
-(n-1)* pn-2(x))/n
结果保留2位小数。
输入
n和x的值。输出
pn(x)的值。样例输入
2 2
样例输出
5.50
提示
主函数已给定如下,提交时不需要包含下述主函数int main()
{
int x,n;
scanf("%d%d",&n,&x);
printf("%.2f\n",polya(n,x));
return 0;
}
#include <stdio.h>
double
polya(
int
n,
int
x);
double
polya(
int
n,
int
x)
{
if
(n==0)
return
1;
if
(n==1)
return
x;
if
(n>1)
{
return
((2*n-1)*x*polya(n-1,x)-(n-1)*polya(n-2,x))/n;
}
}
int
main()
{
int
x,n;
scanf
(
"%d%d"
,&n,&x);
printf
(
"%.2f\n"
,polya(n,x));
return
0;
}
相关文章推荐
- C语言习题&nbsp;用递归方法求&nbsp;f(n)
- C语言习题5.18--进制转换
- C语言习题5.21--学生成绩的处理
- C语言习题5.13--趣味取小数
- C语言习题5.19--递归方法实现逆序
- C语言习题&nbsp;牛顿迭代法求根
- C语言习题&nbsp;求sinh(x)
- C语言习题5.8--求两个整数的最大公…
- C语言习题&nbsp;a!+b!+c!
- C语言实验——素数
- C语言实验--字符变量的输入输出
- C语言实验——打印数字图形
- C语言实验——一元二次方程&#8545;
- C语言实验——输入数字星期,输出英…
- C语言如何 实现 下雪效果
- C++11简化线程池的实现
- 【C++】深度探索C++对象模型之站在对象模型的顶端
- Eclipse下搭建C/C++开发环境
- C++ review(1) - Basics
- C++11笔记1