std::linear_congruential_engine

From cppreference.com
 
 
 
Pseudo-random number generation
Engines and engine adaptors
linear_congruential_engine (C++11)
mersenne_twister_engine (C++11)
subtract_with_carry_engine (C++11)
discard_block_engine (C++11)
independent_bits_engine (C++11)
shuffle_order_engine (C++11)
Generators
random_device (C++11)
Distributions
Uniform distributions
uniform_int_distribution (C++11)
uniform_real_distribution (C++11)
generate_canonical (C++11)
Bernoulli distributions
bernoulli_distribution (C++11)
binomial_distribution (C++11)
negative_binomial_distribution (C++11)
geometric_distribution (C++11)
Poisson distributions
poisson_distribution (C++11)
exponential_distribution (C++11)
gamma_distribution (C++11)
weibull_distribution (C++11)
extreme_value_distribution (C++11)
Normal distributions
normal_distribution (C++11)
lognormal_distribution (C++11)
chi_squared_distribution (C++11)
cauchy_distribution (C++11)
fisher_f_distribution (C++11)
student_t_distribution (C++11)
Sampling distributions
discrete_distribution (C++11)
piecewise_constant_distribution (C++11)
piecewise_linear_distribution (C++11)
Seed Sequences
seed_seq (C++11)
C library
rand
srand
RAND_MAX
 
 
Defined in header <random>
template<

    class UIntType,
    UIntType a,
    UIntType c,
    UIntType m

> class linear_congruential_engine;
(since C++11)

A linear_congruential_engine produces unsigned integer pseudorandom numbers. The state of a LCG is of size 1 and consists of a single integer.

The transition algorithm of the LCG function is x
i+1
← (ax
i
+c) mod m
.

Contents

[edit] Member types

Member type Definition
result_type The integral type generated by the engine. Results are undefined if this is not an unsigned integral type.

[edit] Member variables

constexpr UIntType multiplier
[static]
the multiplier term (a).
(public static member constant)
constexpr UIntType increment
[static]
the increment term (c).
(public static member constant)
constexpr UIntType modulus
[static]
the modulus term (m).
(public static member constant)
constexpr UIntType default_seed
[static]
the default seed (1).
(public static member constant)

[edit] Member functions

Construction and Seeding
constructs the engine
(public member function)
sets the current state of the engine
(public member function)
Generation
advances the engine's state and returns the generated value
(public member function)
advances the engine's state by a specified amount
(public member function)
Characteristics
[static]
gets the smallest possible value in the output range
(public static member function)
[static]
gets the largest possible value in the output range
(public static member function)

[edit] Non-member functions

compares the internal states of two pseudo-random number engines
(function)
performs stream input and output on pseudo-random number engine
(function)