
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define N 500000000
/*假设有一个圆半径为1,所以圆面积就为PI,而包括此四分之一圆的正方形面积就
为1,因此可以生成(0,0)到(1,1)之间的任意坐标,计算坐标落在四分之一圆内的概率即可求得四分之一圆的面积,进而求得圆的面积,即PI。(N的值越大计算的PI越精确)*/
int main ( void )
{
int i,sum=0;
double x,y;
srand ( time ( NULL ) );
for ( i=1; i<N; i++ )
{
x= ( double ) rand() /RAND_MAX;
y= ( double ) rand() /RAND_MAX;
if ( ( x*x+y*y ) <1 )
sum++;
}
printf ( "PI=%f\n", ( double ) 4*sum/N );
return 0;
}


