C++ C++;模具随机数发生器

C++ C++;模具随机数发生器,c++,C++,我似乎无法使rand()函数正常工作。下面是我的代码示例,它询问模具的边数,然后根据边数生成一个随机数(模具卷)。我在value变量中一直得到相同的数字。我做错了什么 #include <iostream> #include <iomanip> #include <stdlib.h> using namespace std; int main() { int numSides; int value; cout <<

我似乎无法使rand()函数正常工作。下面是我的代码示例,它询问模具的边数,然后根据边数生成一个随机数(模具卷)。我在value变量中一直得到相同的数字。我做错了什么

#include <iostream>
#include <iomanip>
#include <stdlib.h>


using namespace std;

int main()
{

    int numSides;
    int value;
    cout << "Please enter the number of sides of the dice: ";
    cin >> numSides;

    value = rand() % numSides + 1;

    cout << endl << value;


}
#包括
#包括
#包括
使用名称空间std;
int main()
{
努米塞德斯;
int值;
裸体;
value=rand()%numSides+1;

您是否需要对RNG进行种子设定,否则每次运行程序时都会得到相同的随机序列。我一直在value变量中得到相同的数字,这是因为您在main()的开头忘了对随机数生成器进行1次种子设定。您没有使用随机“开始”值初始化随机数生成器,因此它将始终生成相同的数字序列。添加#include,并在调用rand之前的同一阶段,添加以下代码srand(time(NULL));签出。您需要为RNG设定种子,否则每次运行程序时都会得到相同的随机序列。我在value变量中一直得到相同的数字,这是因为您在main()的开头忘了为随机数生成器设定1次种子。您没有使用随机“开始”值初始化随机数生成器,因此它将始终生成相同的数字序列。添加#include,并在调用rand之前的同一阶段,添加以下代码srand(time(NULL));签出。