计算圆周率

#include <stdio.h>
#include <math.h>
//PI/4=1-1/3+1/5-1/7+1/9-1/11+.....
int main()
{
    float pi,i,a=1;
    for(i=1;i<=20000;i=i+2)
    {
        if(fabs((1.0/i*pow((-1),(a+1))))<=1e-6)
         break;
    
    pi=pi+1.0/i*pow((-1),(a+1));
    //printf("%f\n",1.0/i*pow((-1),(a+1)));
        a=a+1;

}
    printf("%f",4*pi);
    
    getchar();
}

 

#include <stdio.h>
#include <math.h>
main()
{
    float i,a=0,b=1.0,c=1.0;
    for(i=1;i<10000;i++) 
    {
        if(fabs(b)<1e-6) break;
        b=1.0/(2*i-1)*pow(-1,pow(i,2)-1);
        a=a+c*b;
        //printf("%f\n",b);
        
    }
    printf("%f",4*a);
    getchar();
 }

 

#include <stdio.h>
#include <math.h>
main()
{
    float i,a=0,b=1.0,c=1.0;
    for(i=1;b>=1e-6;i++) 
    {
        b=1.0/(2*i-1);
        a=a+c*b;
        c=-c;
    }
    printf("%f",4*a);
    getchar();
 }
posted @ 2021-09-27 16:55  myrj  阅读(106)  评论(0编辑  收藏  举报