c++ - 我的随机数生成器有什么问题?

标签 c++ random

我只是深入研究一些 C++,我决定制作一个随机数生成器(数字的随机性如何,这真的无关紧要)。大多数代码都是从网上复制过来的,但我的新手眼睛看不出这有什么问题,有什么办法可以调整它每次给出一个不是“6”的数字吗?

#include <iostream>
#include <string>
#include <cstdlib>

using namespace std;
int random_number(int min, int max)
{
    srand((unsigned)time(0));
    int random_num;
    int range=(max-min)+1;
    random_num = min+int(range*rand()/(RAND_MAX + 1.0)); 
    return random_num;
}
int main()
{
    for(int i =0;i < 100;i++)
    {
            cout << random_number(3,10) << endl;
    }
}

最佳答案

在循环前添加srand

 srand((unsigned)time(0));
  for(int i =0;i < 100;i++)
    {
        std::cout << random_number(3,10) << endl;
    }

关于c++ - 我的随机数生成器有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/979397/

相关文章:

c++ - 我写的这个计算 NCR 的函数有什么问题吗?

c++ - 为什么另一个函数中的函数声明会编译,它有什么作用?

mysql - 如何随机更新一个表?

C++11/Boost 随机库,在循环的指定点开始生成

java - 如何以加权的方式选择随机数

c++ - 按 Alpha 顺序对 2D 字符数组进行排序?

c++ - 条件变量的 "wait"函数在提供谓词时导致意外行为

c++ - 在 C++ 中的编译时检索输出目标名称作为字符串

java - hibernate 标准 API : get n random rows

ruby-on-rails - 我怎样才能在 minitest 中 stub 兰特?