Salut à tous.
Voilà je dois réaliser un mastermind en language C pour l'école (compte pour beaucoup de points
)
J'ai copier le code mais il me reste quelques problèmes tels que: - je dois remettre 2 fois les 4 lettres pour qu'il prenne en compte mon premier essai
-Il insère parfois des smileys dans les couleurs...
Merci de votre aide précieuse et voici mon code (:
- include<stdio.h>
- include<stdlib.h>
- include<time.h>
- include<string.h>
- include <ctype.h>
void afficherJeu ();
void initialisercode (int *codes);
int main ()
{
int choix;
printf("\t\t--------------------------------------
---\n\n");
printf("\t\tProgramme realise par : Waroquier Florian\n");
printf("\t\t\tSection : IRT Groupe : 1\n");
printf("\t\t\tAnnée académique : 1ere\n");
printf("\t\t\tNom de l'enseignant : De Bodt\n");
printf("\t\t\tProjet : Jeu du Mastermind\n\n");
printf("\t\t--------------------------------------
---\n\n");
printf("\t\t\t======== MENU ========\n");
printf("\t\t\t(1) : Jouer\n");
printf("\t\t\t(2) : Regles du jeu\n");
printf("\t\t\t(3) : Quitter\n\n");
printf("\t\t\t=======================\n\n");
printf("\t\t\tQue voulez-vous faire ?\n\n\n\n\n\n\n\n");
scanf("%d",&choix);
while (choix<1 || choix>3) //si l'utilisateur introduit un nombre éronné, il devra en retapper un nouveau jusqu'à ce que celui-ci soit correcte.
{
printf("\nChoix invalide, veuillez reessayer:\n\n\n");
scanf("%d",&choix);
}
if (choix==1)
{
printf("\n\n\n\n\n\n\n\n\n\n\n\n\nle jeu va
commencer\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\
n\n\n\n");
system("pause");
afficherJeu();
}
if (choix==2) // s'il tappe 2 il tombera sur les règles.
{
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\tLe but du jeu est de deviner dans l'ordre les quatre couleurs choisies\n par l'ordinateur. Six couleurs seront a votre disposition, et vous aurez droit\n a dix combinaisons pour pouvoir deviner le code secret.\n\n\tPour chaque tentative l'ordinateur indique le nombre de couleurs bien\n placees (a l'aide de pion noir) et le nombre de couleurs mal placees \n(a l'aide de pion blanc).\n\n\t Si le nombre maximal d'essais est atteint, vous aurez perdu et\n la combinaison vous sera alors devoilee. \n\n\n\n\n") ;
system("pause");
}
if (choix==3)
{
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\n");
}
}
void afficherJeu ()
{
int i, l, compteur=1, ligne=9;
char combilettre[5], combinaison[5], lettre, combi ;
char tabinitial[10][8]={
{42,42,42,42,46,46,46,46},
{42,42,42,42,46,46,46,46},
{42,42,42,42,46,46,46,46},
{42,42,42,42,46,46,46,46},
{42,42,42,42,46,46,46,46},
{42,42,42,42,46,46,46,46},
{42,42,42,42,46,46,46,46},
{42,42,42,42,46,46,46,46},
{42,42,42,42,46,46,46,46},
{42,42,42,42,46,46,46,46}
};
system("cls"); // Nettoye la console
combilettre[0]='r';
combilettre[1]='v';
combilettre[2]='b';
combilettre[3]='j';
combilettre[4]='m';
combilettre[5]='o';
srand(time(NULL)); //permet de générer une suite différente à chaque éxécution.
for(i=0;i<4;i++)
{
do{
combinaison[i] = combilettre[rand()%6];
}
while(combinaison[i]==combinaison[i-1]);
printf("%c", combinaison[i]);
}
while(compteur<=10)
{
int i, j, k, w, numerotation=10;
char combi[4]={'\0'};
system("cls");
printf("\t\t\t\tCouleurs disponibles: \n\n\n");
printf("\tr = Rouge - v = Vert - j = Jaune - o = Orange - m = Marron - b = Bleu\n\n\n\n\n");
for (i=0;i<=9;i++)
{
printf("[%3d]-[",numerotation);
for (k=0;k<=7;k++)
{
printf("(%c)",tabinitial[i][k]);
}
printf("]\n");
numerotation--;
}
do
{
printf("\n\nEssai n# %d: \n",compteur);
scanf("%s",&combi);
fflush(stdin);
for(w=0;w<=3;w++)
{
if (combi[w]=='r' || combi[w]=='v' || combi[w]=='b' || combi[w]=='m' || combi[w]=='j' || combi[w]=='o')
{
l++;
}
}
if(l!=4)
{
l=0;
}
}
while (l!=4);
printf("\nCombinaison erronee, veuillez reessayer");
l=0;
if (compteur!=10)
{
for (i=0;i<=3;i++)
{
if (combi[i]==combinaison[i])
{
tabinitial[ligne][i]=combi[i];
tabinitial[ligne][i+4]=78;
}
else
{
if (combi[i]==combinaison[i])
{
tabinitial[ligne][i]=combi[i];
tabinitial[ligne][i+4]=66;
}
else
{
tabinitial[ligne][i]=combi[i];
tabinitial[ligne][i+4]=46;
}
}
}
fflush(stdin);
compteur++;
ligne--;
}
else
{
printf("\nMalheureusement vous n'avez pas trouve la bonne combinaison\n\n");
printf("Celle-ci etait: ");
for(i=0;i<5;i++)
{
printf("%c", combinaison[i]);
}
printf("\n\n");
break;
}
}
system("pause");
}