PTA:递归计算P函数 (15分)(C语言)
本题要求实现下列函数P(n,x)的计算,其函数定义如下:
函数接口定义:
double P( int n, double x );
其中n是用户传入的非负整数,x是双精度浮点数。函数P返回P(n,x)函数的相应值。题目保证输入输出都在双精度范围内。
裁判测试程序样例:
#include
double P( int n, double x );
int main()
{
int n;
double x;
scanf(“%d %lf”, &n, &x);
printf(“%.2f\n”, P(n,x));
return 0;
}
/* 你的代码将被嵌在这里 */
输入样例:
10 1.7
输出样例:
3.05
double P( int n, double x )
{
if (n == 0)
return 1;
else if (n == 1)
return x;
else
return ((2 * n - 1) * P(n - 1, x) - (n - 1) * P(n - 2, x)) / n;
}
还没有评论,来说两句吧...