Obliczanie wartości losowych przez rand() z ziarnem srand'a, które zmienia się zbyt wolno

0

Właściwie to nie wiedziałem jak nazwać ten temat, ale jakoś udało mi się wysłowić w 100 znakach.
A konkretnie: obliczam losowe wartości dla 6 zmiennych naraz, poprzez kod

// Legenda dla nazw zmiennych - Gx(numer gracza)Ky(numer kości)

G1K1 = rand() % MaxWartosc + 1;
G1K2 = rand() % MaxWartosc + 1;
G1K3 = rand() % MaxWartosc + 1;
G1K4 = rand() % MaxWartosc + 1;
G1K5 = rand() % MaxWartosc + 1;
G1K6 = rand() % MaxWartosc + 1;
cout << "Wyniki rzutu wszystkimi koscmi: " << G1K1 << " " << G1K2 << " " << G1K3 << " " << G1K4 << " " << G1K5 << " " << G1K6 << " " << endl << endl;

używając ziarna od srand'a wywoływane przez to:

srand(static_cast<int>(time(NULL)));

jednak ziarno "zmienia się" zbyt wolno (bo sekundowo) i zanim się zmieni, kod już wszystko to oblicza i dlatego pojawiają się takie mało atrakcyjne dla mego programu liczby, np:

user image

1

Zwykły błąd - srand najczęściej powinno się używać tylko jednokrotnie, na początku programu...

0

Aha, dzięki.

1 użytkowników online, w tym zalogowanych: 0, gości: 1