[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.
--
Il y a des jours faut pas m'chercher.
Et y'a des jours tous les jours !
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.
--
Il y a des jours faut pas m'chercher.
Et y'a des jours tous les jours !
Configuration: Tour: Antec Nine Hundred. Moniteur: LCD 19" HYUNDAI X93W WIDE. Carte mère: GIGABYTE EP45-DS3. Processeur: Intel Core Duo E7200. Carte graphique: GIGABYTE Ati Radeon HD 3870 512MB GDDR3. RAM: G.SKILL 1024*2 DDR2. Clavier: Logitech G11. Souris: Microsoft Laser Mouse 6000.
A voir également:
- [C] Problème nombre aléatoire.
- Nombre facile - Télécharger - Outils professionnels
- Nombre de jours entre deux dates excel - Guide
- Nombre de page - Guide
- Afficher le 0 devant un nombre dans excel - Guide
- Nombre de combinaison possible avec 3 chiffres ✓ - Forum Programmation
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