std::uniform_int_distribution
Min standard notice:
Header: <random>
Produces random integer values (\small i)i, uniformly distributed on the closed interval (\small[a, b])[a, b], that is, distributed according to the discrete probability function
# Declarations
template< class IntType = int >
class uniform_int_distribution;
(since C++11)
# Example
#include <iostream>
#include <random>
int main()
{
std::random_device rd; // a seed source for the random number engine
std::mt19937 gen(rd()); // mersenne_twister_engine seeded with rd()
std::uniform_int_distribution<> distrib(1, 6);
// Use distrib to transform the random unsigned int
// generated by gen into an int in [1, 6]
for (int n = 0; n != 10; ++n)
std::cout << distrib(gen) << ' ';
std::cout << '\n';
}