C++ 用户定义的随机数生成器

c++ user defined random number generator

本文关键字:随机数生成器 定义 用户 C++      更新时间:2023-10-16

我在用户定义的范围之间生成 10 个随机数时遇到问题。

到目前为止,我有这个:

int minimum, maximum, randNum;
cout << "Hello, please insert the smallest number for your range of random numbers" << endl;
cin >> minimum;
cout << "Please insert your largest number for your range of random numbers" << endl;
cin >> maximum;
srand (time(NULL));
randNum = rand()%(maximum-minimum)+minimum;

不太确定从这里开始。 任何帮助不胜感激,谢谢!

你来了:

#include <iostream>
#include <random>
int main() {
    int minimum, maximum;
    std::cin >> minimum >> maximum;
    // Create a random number generator
    std::random_device rd;
    std::mt19937 gen(rd());
    // We want random numbers within [minimum, maximum]
    std::uniform_int_distribution<> dis(minimum, maximum);
    // Print 10 random numbers    
    for (int i=0; i<10; ++i)
        std::cout << dis(gen) << "n";
}

你应该围绕随机数生成代码做一个简单的循环,将每个值推入一个向量中。 让循环的条件如下所示:

for(int i =0; i < 10; ++i)

总的来说,你应该有这样的东西:

srand(time(NULL));
vector<int> vec;
for(int i = 0; i < 10; ++i){
    vec.push_back(rand() % max + min);
}

所有 10 个数字都将在您的向量中。 或者沿着这些思路的某种方法。