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));