#include "stdio.h" #include "math.h" double Pi(int debug){ double a=1, b= sqrt(2.0)/2, s=0.25, t=1, befor, dab=a-b; do{ double aa=a; befor=dab; a = (a+b)*0.5; b=sqrt(aa * b); aa = a - aa; dab = a-b; s -= t * aa * aa; t *= 2.0; if(debug)printf("\na=%19.16fl b=%19.16fl a-b=%10.4el s=%10.4el", a, b,dab,s); }while(dab != befor); t=a+b; return 0.25 * t * t / s; } int main(){ printf("\n%19.16fl", Pi(true)); getchar(); return 0; }