★★★求pi的近似值

Q401.(语言: C)用下列公式求pi的近似值,直到最后一项的绝对值小于1e-4为止(最后一项要加):
π/4≈1-1/3+1/5-1/7 .......
**输入:无
**输出格式要求:"pi=%10.6f\n"
程序运行示例如下:
pi= 3.141793
注:用double计算

注意:abs与fabs的区别

abs函数

  • 只能对 整数 求绝对值
  • 输入 float double 会被 隐式转换成 int(截断小数部分)

这里要求的精度是对1/(2*k+1)要求的,不是对sum和PI要求的

#include<stdio.h>
#include<math.h>
const double ESP=1e-4;

int main()
{
    double PI ,sum = 0,term = 1;
    int count = 0;
    while(fabs(term)>=ESP){
            int i = 2*count+1;
            if(count%2==0){
                term = 1.0/i;
            }else{
                term = -1.0/i;
            }
            sum+=term;
            count++;
    }
    PI = sum*4;
    printf("pi=%10.6f\n",PI);
    return 0;
}

posted @ 2026-01-18 17:21  沫忆拾忆  阅读(2)  评论(0)    收藏  举报