Mastermind en C

Fermé
coran20 Messages postés 6 Date d'inscription samedi 29 janvier 2011 Statut Membre Dernière intervention 31 mai 2011 - 16 mars 2011 à 22:33
coran20 Messages postés 6 Date d'inscription samedi 29 janvier 2011 Statut Membre Dernière intervention 31 mai 2011 - 17 mars 2011 à 22:50
Bonjour,
Svp , j'ai un miniprojet concernant mastermind en C et j'ai un petit problème concernant la génération de 4 nombres d'une manière aléatoire parmis 8 sans qu'il y a un nombre répété deux fois
SVP, j'attend vos réponses:D


4 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 842
16 mars 2011 à 23:02
Bonjour,

Il faut passer par un tableau. Tu stockes les nombres aléatoires au fur et à mesure dans ton tableau et tu boucles tant que la nouvelle valeur aléatoire n'est pas différente de toutes les valeurs du tableau.
0
.N Messages postés 25 Date d'inscription samedi 12 mars 2011 Statut Membre Dernière intervention 17 mars 2011 561
17 mars 2011 à 01:08
0
voilà une proc que j'ai utilisé moi meme pr fair ce miniprojet
void al( int t[4],int tc[10])
{
int k, i;


srand(time(0));
k = 0;
int nbre; // nombre générer aléatoirement
int nbre_unique = 1,nbre_existe=0 ;
while( k < 4) // on aura 4 nombre t[0] ,t[1] ,t[2] ,t[3]
{
nbre = rand()%13+1;
for( i=0 ; i<=k ; i++)
{
if (nbre == t[i])
{
nbre_unique = 0;
break;
}
}
for( i=0 ; i<=10 ; i++)
{
if (nbre == tc[i])
{
nbre_existe = 1;
break;
}
}

if((nbre_unique)&&(nbre_existe))
{
t[k] = nbre;
k++; // on passe au prochain
}
nbre_unique = 1;
nbre_existe =0; // pour le prochain tour
} // fin de while
}
0
coran20 Messages postés 6 Date d'inscription samedi 29 janvier 2011 Statut Membre Dernière intervention 31 mai 2011
17 mars 2011 à 22:50
Merci infinimment
0