固定的(和包括)100和149之间的随机数范围

1 c++ random

键入两个语句,用于rand()在(和包括)100和149之间打印2个随机整数.以换行符结束.例如:

101
133
Run Code Online (Sandbox Code Playgroud)

我试过了...

cout << rand() % 100 << endl;
cout << rand() % 149 << endl;
Run Code Online (Sandbox Code Playgroud)

......而且无法让它发挥作用.

我非常困惑.任何帮助,将不胜感激!

qua*_*dev 5

(rand() % 50) + 100如果您想要均匀分布,请不要使用.

使用std::uniform_int_distribution<random>标题:

#include <random>
#include <iostream>

int main()
{
    std::random_device rd;
    std::mt19937 gen(rd());
    std::uniform_int_distribution<> dis(100, 149);

    for (int n=0; n<2; ++n)
        std::cout << dis(gen) << ' ';
    std::cout << '\n';
}
Run Code Online (Sandbox Code Playgroud)

现场演示