You are on page 1of 1

Temat: Funkcje losujące w C++

Funkcja rand() – pochodzi ze standardowej biblioteki cstlib.


Losuje liczbę w przedziale od 0 do RAND_MAX.
RAND_MAX – predefiniowana stała symboliczna (32767=215-1

Zapis: rand() % 100 + 1 zainicjuje losowanie liczb od 1 do


100.
Zastosowanie funkcji rand() do generowania liczb losowych:
• generowanie liczby losowej całkowitej z zakresu [p; q]
liczba = p + rand() % (q – p + 1);
• generowanie liczby losowej całkowitej z zakresu [0; q]
liczba = rand() % (q + 1);
• generowanie liczby losowej rzeczywistej z zakresu [p; q]
liczba = p + (double) rand() / RAND_MAX * (q – p);
• generowanie liczby losowej rzeczywistej z zakresu [0; 1]
liczba = (double) rand() / RAND_MAX;

Funkcja srand() – pochodzi z biblioteki ctime.


Jeżeli kilkukrotnie uruchomimy program z użyciem funkcji
rand(), to za każdym razem zostaną wylosowane te same
liczby. Aby uzyskać każdorazowo inne wylosowane wartości
w raz skompilowanym programie, należy skorzystać z funkcji
srand() i powiązać ją z czasem rzeczywistym ustawionym
w komputerze i wywołać na samym początku programu:
srand(time(NULL));

You might also like