GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
std::linear_congruential_engine(3) C++ Standard Libary std::linear_congruential_engine(3)

std::linear_congruential_engine - std::linear_congruential_engine


Defined in header <random>
template<


class UIntType,
UIntType a, (since C++11)
UIntType c,
UIntType m


> class linear_congruential_engine;


linear_congruential_engine is a random number engine based on Linear congruential
generator (LCG). A LCG has a state that consists of a single integer.


The transition algorithm of the LCG function is \(\small{x_{i+1}\leftarrow(a x_i +
c)\mod m}\)x
i+1 ← (ax
i+c) mod m.


The following typedefs define the random number engine with two commonly used
parameter sets:


Defined in header <random>
Type Definition
std::linear_congruential_engine<std::uint_fast32_t, 16807, 0,
2147483647>
minstd_rand0(C++11)
Discovered in 1969 by Lewis, Goodman and Miller, adopted as
"Minimal standard" in 1988 by Park and Miller
std::linear_congruential_engine<std::uint_fast32_t, 48271, 0,
2147483647>
minstd_rand(C++11)
Newer "Minimum standard", recommended by Park, Miller, and
Stockmeyer in 1993


The result type generated by the generator. The effect is undefined if
UIntType - this is not one of unsigned short, unsigned int, unsigned long, or
unsigned long long.
a - the multiplier term
c - the increment term
m - the modulus term


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


constructor constructs the engine
(C++11) (public member function)
seed sets the current state of the engine
(C++11) (public member function)


operator() advances the engine's state and returns the generated value
(C++11) (public member function)
discard advances the engine's state by a specified amount
(C++11) (public member function)


min gets the smallest possible value in the output range
[static] (C++11) (public static member function)
max gets the largest possible value in the output range
[static] (C++11) (public static member function)


operator== compares the internal states of two pseudo-random number
operator!= engines
(C++11) (function)
(C++11)(removed in C++20)
operator<< performs stream input and output on pseudo-random number
operator>> engine
(C++11) (function template)


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

2022.07.31 http://cppreference.com

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.