Advertisement
MeehoweCK

Untitled

Jul 19th, 2018
225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.67 KB | None | 0 0
  1. #include <iostream>
  2. #include <ctime>
  3. #include <cstdlib>
  4.  
  5. using namespace std;
  6.  
  7. const long long N = 1000000000;
  8.  
  9. double montecarlo()
  10. {
  11.     srand(static_cast<unsigned>(time(nullptr)));
  12.  
  13.     long long licznik = 0;
  14.     double x,y;
  15.  
  16.     for(long long i = 0; i < N; ++i)
  17.     {
  18.         x = rand() / 32767.0;       // losowanie liczby rzeczywistej od 0 do 1 (32767 to maksymalna losowana)
  19.         y = rand() / 32767.0;
  20.         if(x*x + y*y <= 1)
  21.             ++licznik;
  22.     }
  23.  
  24.     return 4.0 * licznik / N;       // UWAGA: zapis licznik / N * 4.0 NIE byłby poprawny. Dlaczego?
  25. }
  26.  
  27. int main()
  28. {
  29.     cout << "PI oszaczowano na " << montecarlo() << endl;
  30.     return 0;
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement