Ocena użytkownikóww: ***** / 2
Nadesłany przez Tomasz Lubiński, 06 października 2008 01:00
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.Jeżeli nie odpowiada Ci sposób formatowania kodu przez autora skorzystaj z pretty printer'a i dostosuj go automatycznie do siebie.
Test_PI.c:
//testowanie generatorow liczb pseudolosowych
//test PI
//www.algorytm.org (c) 2008 Tomasz Lubinski
#include "stdio.h"
#include "stdlib.h"
int main()
{
int n; //liczba losowanych punktow
double x, y; //wspolrzedne losowanych punktow
int Isq, Ic; //liczby punktow w kwadracie oraz kole
double pi, wzor;//wynik
printf("Dla ilu punktow wykonac test?\n");
scanf("%d", &n);
randomize();
Isq = 0;
Ic = 0;
while (Isq < n)
{
x = rand() / (double)RAND_MAX;
y = rand() / (double)RAND_MAX;
Isq = Isq + 1;
if (x*x + y*y <= 1)
Ic = Ic + 1;
}
pi = (double)4.0*Ic / Isq;
wzor = 3.141592653589793238462643383279502884197169399;
printf("Wzorcowe pi = %g\n", wzor);
printf("Wyliczone pi = %g\n", pi);
printf("Roznica = %g\n", abs(wzor - pi));
return 0;
}