有大佬会做这道题吗,13题,c语音

有大佬会做这道题吗,13题,c语音

#include <stdio.h>

int main()
{
    double pi;
    int i = 0;
    float d = 1;
    int sign = 1;
    double e = 1e-5;
    
    pi = 1;
    for (i = 1; d > e; ++i)
    {
        sign = -sign;
        d = 1.0 / (2 * i + 1);
        pi += sign * d;
        printf("i = %d, d = 1/%d = %f, pi/4 = %f\n", i, (2 * i + 1), d * sign, pi);
    }
    
    pi *= 4;

    printf("Final pi: %f\n", pi);
}

// output
i = 1, d = 1/3 = -0.333333, pi/4 = 0.666667                                                                                                                                           
i = 2, d = 1/5 = 0.200000, pi/4 = 0.866667                                                                                                                                           
i = 3, d = 1/7 = -0.142857, pi/4 = 0.723810                                                                                                                                           
i = 4, d = 1/9 = 0.111111, pi/4 = 0.834921                                                                                                                                           
i = 5, d = 1/11 = -0.090909, pi/4 = 0.744012                                                                                                                                          
i = 6, d = 1/13 = 0.076923, pi/4 = 0.820935                                                                                                                                          
i = 7, d = 1/15 = -0.066667, pi/4 = 0.754268                                                                                                                                          
i = 8, d = 1/17 = 0.058824, pi/4 = 0.813091                                                                                                                                          
i = 9, d = 1/19 = -0.052632, pi/4 = 0.760460                                                                                                                                          
i = 10, d = 1/21 = 0.047619, pi/4 = 0.808079    
......
i = 49995, d = 1/99991 = -0.000010, pi/4 = 0.785393                                                                                                                                  
i = 49996, d = 1/99993 = 0.000010, pi/4 = 0.785403                                                                                                                                   
i = 49997, d = 1/99995 = -0.000010, pi/4 = 0.785393                                                                                                                                  
i = 49998, d = 1/99997 = 0.000010, pi/4 = 0.785403                                                                                                                                   
i = 49999, d = 1/99999 = -0.000010, pi/4 = 0.785393                                                                                                                                  
i = 50000, d = 1/100001 = 0.000010, pi/4 = 0.785403                                                                                                                                  
Final pi: 3.141613     

附注:求赞助积分和C币。加入CSDN将近20年了。最近几年忙小孩没登录。刚才搜索到一本电子书想下载,需要20积分/C币。已经收到8元了,还查12元。赞助多少都可以。多谢。

源程序

#include "stdio.h"
#include "math.h"
int main(void)
{
    double pi4 = 0;
    double j = 0;
    double i = 1;
    while(true)
    {
        j = pow(-1, i + 1) * (1.0 / (2 * i - 1));
        //求绝对值
        if (fabs(j) <= 0.00001)
            break;
        else
        {
            pi4 += j;

            i++;
        }
    }
    printf("π = %f\n", pi4 * 4);
    return 0;
}

输出结果

π = 3.141573

 

如有帮助还望采纳