johanb
Messages postés33Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention19 mai 2006
-
22 oct. 2003 à 20:10
garslouche
Messages postés583Date d'inscriptionmardi 26 novembre 2002StatutMembreDernière intervention29 mai 2015
-
23 oct. 2003 à 08:18
bonjour a tous, voici mon problême.Dans un programme, je dois générer deux fois un nombre aléatoire entre 0 et n (appelé max dans le programme). Voici a peu près le code que j'utilise:
void main()
{
int nombre;
int max;//
srand((unsigned)time(NULL));
max=1000;
nombre=rand()*max/RAND_MAX;
}
c'est pour le moment la meilleure façon que j'ai trouvée.Malheuresement, sur un petit nombre de générations aléatoires, l'étendue de ces nombres n'est pas très importante. Par exemple,si on défini max=1000, on devrait avoir des nombres entre 0 et 1000 assez "dispatchés"; or moi par exemple j'obtient des valeurs du genre 58,160,210,250,45,7...et pas de valeurs comme 901,675...
J'ajoute que quand j'utilise le code seul dans un fichier .cpp la génération est très bien, mais dans mon programme, c'est pas du tout le cas.
Si au besoin il faut le code source, je le donnerai