zoukankan      html  css  js  c++  java
  • 习题2.6 递归求简单交错幂级数的部分和(15 分)浙大版《数据结构(第2版)》题目集

    本题要求实现一个函数,计算下列简单交错幂级数的部分和:

    f(x,n)=xx2​​+x3​​x4​​++(1)n1​​xn​​

    函数接口定义:

    double fn( double x, int n );
    

    其中题目保证传入的n是正整数,并且输入输出都在双精度范围内。函数fn应返回上述级数的部分和。建议尝试用递归实现。

    裁判测试程序样例:

    #include <stdio.h>
    
    double fn( double x, int n );
    
    int main()
    {
        double x;
        int n;
    
        scanf("%lf %d", &x, &n);
        printf("%.2f
    ", fn(x,n));
    
        return 0;
    }
    
    /* 你的代码将被嵌在这里 */
    

    输入样例:

    0.5 12
    

    输出样例:

    0.33
    
    fn(x,n)代表前n项交错级数的和,可以知道fn(x,n + 1)和他关系,n+1项和无非是比n项和多了个(1)n​​xn+1​​,我们可以看成fn(x,n) * (-x)变成−x2​​+x3​​x4​​++(1)n1​​xn​​+(1)n​​xn+1,再加上x即可,由此出来递推关系fn(x,n)=x * (1 - fn(x,n-1))
    代码:
    double fn( double x, int n ) {
        if(n==1)return x;
        else return x * (1 - fn(x,n-1));
    }
  • 相关阅读:
    python基础:多进程讲解
    vue 导出数据
    vue 导入excel数据组件
    vue 分页组件
    vue 点击空白区域隐藏div
    vue 类似淘宝选择地址组件
    js基础练习经典题(数组,质数,数组的遍历等等)
    js去重复
    理解CSS3里的Flex布局用法
    书写HTML5/CSS3的命名规则
  • 原文地址:https://www.cnblogs.com/8023spz/p/7636001.html
Copyright © 2011-2022 走看看