#include #include int main(int argc, char **argv) { double x, y, pi; int i, Total, Good, N; if (argc < 3) { fprintf(stderr, "Usage: %s SEED N\n", argv[0]); fprintf(stderr, " SEED = random number gen. seed\n"); fprintf(stderr, " N = number random points used\n"); fprintf(stderr, "\n Program approx. pi...\n"); exit(1); } srandom( atoi(argv[1]) ); N = atoi(argv[2]); Total = Good = 0; for (i = 0; i < N; i++) { x = random()/(double)2147483647; y = random()/(double)2147483647; if ( x*x + y*y < 1.0 ) Good++; Total++; } pi = 4*Good/(double)Total; printf("\nAppr. of pi using %d random points = %lf\n\n", N, pi); }