4-19 递归计算P函数 (10分)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36630770/article/details/62214727

本题要求实现下列函数P(n,x)P(n,x)P(n,x)的计算,其函数定义如下:

函数接口定义:

double P( int n, double x );

其中n是用户传入的非负整数,x是双精度浮点数。函数P返回P(n,x)P(n,x)P(n,x)函数的相应值。题目保证输入输出都在双精度范围内。

裁判测试程序样例:

#include <stdio.h>

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 )
{
	double result;
	if(n == 0)
	result = 1;
	else if(n == 1)
	result = x;
	else
	result = ((2 * n - 1) * P(n-1,x)-(n - 1) * P(n-2,x)) / n;
	return result;
}

猜你喜欢

转载自blog.csdn.net/qq_36630770/article/details/62214727