0


信息学奥赛一本通(1166:求f(x,n))

1166:求f(x,n)

时间限制: 1000 ms 内存限制: 65536 KB
提交数: 13944 通过数: 9112

【题目描述】

已知

计算x=4.2,n=10以及x=2.5,n=15时的f的值。

【输入】

输入xx和nn。

【输出】

函数值,保留两位小数。

【输入样例】

4.2 10

【输出样例】

3.68

【分析】

    这道题主要看清楚根号里的规律,设 f(x,n)是求该表达式值的函数,递归式:![f(x,n) = \sqrt{n+f(x,n-1)}](https://latex.codecogs.com/gif.latex?f%28x%2Cn%29%20%3D%20%5Csqrt%7Bn+f%28x%2Cn-1%29%7D),递归出口:n=1时,![\sqrt{1+x}](https://latex.codecogs.com/gif.latex?%5Csqrt%7B1+x%7D)。

【参考代码】

#include <stdio.h>
#include <math.h>
double f(double x,double n)
{
    if(n==1)
        return sqrt(1+x);
    else
        return sqrt(n+f(x,n-1));
}
int main()
{
    double n,x;
    scanf("%lf%lf",&x,&n);
    printf("%.2lf\n",f(x,n));
    return 0;
}

http://ybt.ssoier.cn:8088/problem_show.php?pid=1166

标签:

本文转载自: https://blog.csdn.net/lvcheng0309/article/details/117522974
版权归原作者 橙子教师 所有, 如有侵权,请联系我们删除。

“信息学奥赛一本通(1166:求f(x,n))”的评论:

还没有评论