class
<random>

std::minstd_rand0

typedef linear_congruential_engine<uint_fast32_t, 16807, 0, 2147483647> minstd_rand0;
Minimal Standard minstd_rand0 generator
A simple multiplicative congruential pseudo-random number generator (a type of linear_congruential_engine).

The generator has a single value as state, which is modified by its transition algorithm on each advance like x is modified in the following piece of code:
 
x = x * 16807 % 2147483647


It is an instantiation of the linear_congruential_engine with the following template parameters:
parameternamevaluenotes
amultiplier1680775
cincrement0
mmodulus2147483647 231-1

Member types

The following alias is a member type of minstd_rand0:

member typedefinitionnotes
result_typeuint_fast32_tThe type of the numbers generated.

Member functions

As a linear_congruential_engine types, it has the following member functions:

Non-member functions

As a linear_congruential_engine type, the following operator overloads may be applied to it:

Member constexpr constants

member constantdefinitionnotes
multiplier16807The multiplier (a) used in the transition algorithm on each advance.
increment0The increment (c) used in the transition algorithm on each advance.
modulus2147483647The modulus (m) used in the transition algorithm on each advance.
default_seed1The default seed used on construction or seeding.

See also