Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Injecte le moteur.
void seed(UIntType x0 = default_seed);
void seed(seed_seq& seq);
Paramètres
x0
La valeur initiale.seq
L'objet du type seed_seq qui fournit la valeur de départ randomisée.
Notes
Condition préalable : 0 < x0
La première fonction de départ construit efficacement le moteur gen:
linear_congruential_engine<UIntType, 40014, 0, 2147483563>
gen(x0 == 0 ? default_seed: x0);
Il définit ensuite les valeurs historique d' R à partir h[0] aux valeurs produites en appelant gen().
La deuxième fonction de départ définit ces valeurs historiques comme suit :
k est le nombre d'entiers d' unsigned long nécessaires pour fournir tous les bits dans un entier d' UIntType (au moins 1).
a est un tableau d'éléments d' R * k de type UIntType.
a est initialisé en appelant seq.generate(&a[0], &a[R * k]).
Chaque h[i] est composé de comprimant les éléments d' k en commençant à a[i * k], qui fournit les bits de poids faible.
Chaque h[i] modulo est réduit M.
Dans les deux cas, les sont stockés présentent des h[R - 1] == 0.
Configuration requise
en-tête : <random>
l'espace de noms : DST