• 练习4-3 求给定精度的简单交错序列部分和


    /*
        计算序列部分和 1 - 1/4 + 1/7 - 1/10 + ... 直到最后一项的绝对值不大于给定精度eps。
    
        输入格式:
        输入在一行中给出一个正实数eps。
    
        输出格式:
        在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。
    */
    
    #include<stdio.h>
    #include<math.h>
    
    int main(void)
    {
        double eps;
        double flag, denominator, item, sum;
    
        scanf_s("%lf", &eps);
        flag = 1;
        denominator = 1;
        
        /*
            item的初值比eps大
            可以保证进入循环程序
            可以满足eps比1大的情况下,sum能加到第一项
        */
        item = eps + 1;
        sum = 0;
        while (fabs(item) > eps)
        {
            /*不满足while判断表达式后的第一项,此时的item为下一项*/
            item = flag / denominator;
            sum = sum + item;
            flag = -flag;
            denominator = denominator + 3;        
        }
        
        printf("sum = %.6f
    ", sum);
    
        return 0;
    }

  • 相关阅读:
    Linux
    Linux
    Linux
    Linux
    Linux
    Python
    Linux
    Python
    MySQL
    Python
  • 原文地址:https://www.cnblogs.com/2018jason/p/11849335.html
Copyright © 2020-2023  润新知