Sdílet prostřednictvím


subtract_with_carry_engine::seed

Semena motoru.

void seed(UIntType x0 = default_seed);
void seed(seed_seq& seq);

Parametry

  • x0
    Hodnota osiva.

  • seq
    Objekt typu seed_seq , dodává náhodného osiva.

Poznámky

Předběžná podmínka:0 < x0

První funkce osiva účinně konstrukce motoru gen:

    linear_congruential_engine<UIntType, 40014, 0, 2147483563>
    gen(x0 == 0 ? default_seed: x0);

Poté nastaví R historické hodnoty začínající h[0] hodnoty vyrobené voláním gen().

Druhá funkce osiva nastaví tyto historické hodnoty takto:

  • kpočet unsigned long potřeby poskytnout všechny bity v celých čísel UIntType celé číslo (nejméně 1).

  • aje pole R * k prvky typu UIntType.

  • aje inicializována voláním seq.generate(&a[0], &a[R * k]).

  • Každý h[i] se skládají z balení k prvky od a[i * k], které dodává nejnižší pořadí bitů.

  • Každý h[i] je snížena M.

V obou případech je uložené provádět h[R - 1] == 0.

Požadavky

Záhlaví: <random>

Obor názvů: std

Viz také

Referenční dokumentace

<random>

subtract_with_carry_engine Class