Maison >développement back-end >C++ >Comment éviter de répéter des nombres aléatoires dans une boucle C ?
Comment générer des nombres aléatoires vraiment uniques dans une boucle C
Dans ce code, vous essayez de générer un nombre aléatoire différent avec chaque boucle itération :
for (int t = 0; t<10; t++) { int random_x; srand(time(NULL)); random_x = rand() % 100; cout << "\nRandom X = " << random_x; }
Cependant, le problème est que vous appelez srand() plusieurs fois dans la boucle. Cela initialise le générateur de nombres aléatoires (RNG) à chaque fois avec la même valeur de départ, ce qui donne la même séquence de nombres aléatoires.
Pour générer des nombres aléatoires vraiment uniques dans une boucle, vous devez suivre ces étapes :
srand(time(NULL)); // Initialize RNG outside of loop
random_x = rand() % 100;
En suivant ces étapes, vous pouvez générer différents nombres aléatoires à chaque itération de votre boucle.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!