Witam.
Piszę w C++ pewien algorytm randomizowany, który w bardzo krótkich odstępach czasu potrzebuje nowych liczb pseudolosowych. I tutaj pojawia się problem - otóż funkcja
rand()
przy tak krótkich odstępach czasu zwraca bardzo bliskie sobie wartości. Jak można zwiększyć ową pseudolosowość?
Gwoli ścisłości: dokładnie raz w main() wywołuję
srand(time(NULL));
, więc błąd tutaj nie polega na tym, że robiłbym to za każdym razem przed losowaniem kolejnej liczby.
Być może ma znaczenie również to, że potrzebuję liczb z przedziału [0; 1), więc instrukcja losowania nowej liczby wygląda u mnie tak:
x = double(rand()) / RAND_MAX;