乱数のバッチを生成する必要がある典型的な状況があります。各パスで 100 個の乱数を生成するループを使用しました。
for(int i=0; i<npasses; i++)
{
srand(time(NULL)); //Initialize seed
for(int j=0; j<100; j++)
printf("%d ", rand()%10);
printf("\n"); //New line after 100 numbers
}
これで、内側のループが 1 ミリ秒未満で実行されます。その結果、time() の値に変化はありません。これにより、シード(srand())が同じ値に再初期化され、乱数が繰り返されます..
誰でも回避策/修正を提案できますか?