Algorithm 如何确保rand()不再选择一组点
我正在写一个代码,对一组4个数字执行随机扫描。我想扫描10000点(百万以后)。我刚刚了解了rand(),以下是相关部分:Algorithm 如何确保rand()不再选择一组点,algorithm,random,random-sample,Algorithm,Random,Random Sample,我正在写一个代码,对一组4个数字执行随机扫描。我想扫描10000点(百万以后)。我刚刚了解了rand(),以下是相关部分: int numPoints = 10000; double A,B,C,D; for (i=0; i<=numPoints1;i++) { srand ( time(NULL) ); A = rand() % 500 + 100; B = rand() % 500 +
int numPoints = 10000;
double A,B,C,D;
for (i=0; i<=numPoints1;i++) {
srand ( time(NULL) );
A = rand() % 500 + 100;
B = rand() % 500 + 100;
C = rand() % 100 - 100;
D = rand() % 5 + 2.5;
但是,我在输出文件中注意到,很多时候,都会拾取相同的A、B、C、D集
Q:关于如何改善这种情况,有什么建议吗?您应该将呼叫转移到
srand
。像这样:
srand(time(NULL));
for (i = 0; i <= numPoints1; i++)
{
...
}
srand(时间(空));
对于(i=0;i
srand(time(NULL));
for (i = 0; i <= numPoints1; i++)
{
...
}