[C] Problème nombre aléatoire.
Résolu
cs-bilou
Messages postés
836
Statut
Membre
-
cs-bilou Messages postés 836 Statut Membre -
cs-bilou Messages postés 836 Statut Membre -
Bonjour,
J'ai commencer a apprendre le C depuis 1mois depuis le Site Du zéro.
J'ai fini la Partie II.
Je suis en train de réaliser a un MasterMind.
Mais je bug.
Pour trouver les combinaison aléatoire.
Voila mon code:
Et
Mais le problème c'est qu'il me met un même nombre dans tout le tableau.
Donc si quelqu'un a une solution.
Merci.
J'ai commencer a apprendre le C depuis 1mois depuis le Site Du zéro.
J'ai fini la Partie II.
Je suis en train de réaliser a un MasterMind.
Mais je bug.
Pour trouver les combinaison aléatoire.
Voila mon code:
for(i = 0 ; i < 4 ; i++)
{
code[i] = codeHasard();
printf("%ld\n", code[i]);
}
Et
int codeHasard()
{
int max = 8, min = 1, nombreHasard = 0;
srand(time(NULL));
nombreHasard = (rand() % (max - min + 1)) + min;
return nombreHasard;
}
Mais le problème c'est qu'il me met un même nombre dans tout le tableau.
Donc si quelqu'un a une solution.
Merci.
A voir également:
- [C] Problème nombre aléatoire.
- Nombre de jours entre deux dates excel - Guide
- Nombre facile - Télécharger - Outils professionnels
- Ascii nombre de caractères - Guide
- Gto nombre episode - Forum Cinéma / Télé
- Afficher le 0 devant un nombre dans excel - Guide
2 réponses
Bonjour
Le problème c'est que tu initialises le générateur de nombre aléatoire à chaque fois avec la même valeur, (car ton programme est très rapide et l'heure n'a pas le temps de changer). La solution c'est de l'initialiser une seule fois
srand(time(NULL));
enlève cette ligne de là où elle est pour la mettre avant le début de ta boucle for
Le problème c'est que tu initialises le générateur de nombre aléatoire à chaque fois avec la même valeur, (car ton programme est très rapide et l'heure n'a pas le temps de changer). La solution c'est de l'initialiser une seule fois
srand(time(NULL));
enlève cette ligne de là où elle est pour la mettre avant le début de ta boucle for