Ask Question

Name:
Title:
Your Question:

Answer Question

Name:
Your Answer:
User Submitted Source Code!


Description:
  jea
Language: C/C++
Code:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
     int n;
     srand ( time(NULL) );
     
     printf("\n Monte-Carlo simulation fo find the number PI");
     printf("\n How many samples: ");
     scanf("%d", &n);
     
     printf("\n Throwing darts... ");
     
     int c = 0;
     for(int i=0; i<n; i++)
     {
          double x = ((double)rand()/RAND_MAX) - 0.5;
          double y = ((double)rand()/RAND_MAX) - 0.5;
          if(x*x + y*y > 0.5*0.5)
               c++;
     }
     
     double pi = 4.0 * (n - c) / (double)n;
     double pi_real = 3.14159265358979323846;
     
     printf("\n Calculated PI = %.10f", pi);
     printf("\n      Exact PI = %.10f", pi_real);
     
     double diff = 100.0 * (pi - pi_real) / pi_real;
     printf("\n Difference = %.3f %%", diff);
     
     getchar();
     
     return 0;
}
Comments: