avancee jeu
This commit is contained in:
parent
eb81c0ffe9
commit
a65a1015e1
1 changed files with 25 additions and 14 deletions
33
main.c
33
main.c
|
@ -55,42 +55,53 @@ char * obfuscation(char mot[], int lettresValidees[], int taille) {
|
||||||
j++;
|
j++;
|
||||||
}
|
}
|
||||||
|
|
||||||
printf("mot: %s, taille mot: %d, mot caché: %s\n", mot, taille, motCache);
|
printf("[DEBUG: mot: %s, taille mot: %d, mot caché: %s]\n", mot, taille, motCache);
|
||||||
|
|
||||||
return motCache;
|
return motCache;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int lettreDansMot(char mot[], int tailleMot, char lettre[]) {
|
||||||
|
for(int i = 0; i < tailleMot; i++) if(mot[i] == lettre[0]) return 1;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
int jeu() {
|
int jeu() {
|
||||||
// mot aléatoire
|
// mot aléatoire
|
||||||
char liste[14] = "listeMots.txt";
|
char liste[14] = "listeMots.txt";
|
||||||
char * mot = recuperationMot(liste);
|
char * mot = recuperationMot(liste);
|
||||||
int tailleMot = longueurMot(mot);
|
int tailleMot = longueurMot(mot);
|
||||||
int tableauLettresValidees[tailleMot];
|
int tableauLettresValidees[tailleMot];
|
||||||
|
char * motObfusque;
|
||||||
|
int demandeLettre;
|
||||||
|
char lettre;
|
||||||
for(int i = 0; i < tailleMot; i++) tableauLettresValidees[i] = 0;
|
for(int i = 0; i < tailleMot; i++) tableauLettresValidees[i] = 0;
|
||||||
|
|
||||||
// lancement jeu
|
// lancement jeu
|
||||||
short int essaisRestants = 10;
|
short int essaisRestants = 10;
|
||||||
int finDuJeu = 0;
|
int finDuJeu = 0;
|
||||||
while(finDuJeu == 0) {
|
while(finDuJeu == 0) {
|
||||||
char * motObfusque = obfuscation(mot, tableauLettresValidees, tailleMot);
|
motObfusque = obfuscation(mot, tableauLettresValidees, tailleMot);
|
||||||
printf("\nMot à trouver : %s\n", motObfusque);
|
printf("\nMot à trouver : %s\n", motObfusque);
|
||||||
free(motObfusque);
|
free(motObfusque);
|
||||||
printf("Nombre d'erreurs restantes : %hu\n", essaisRestants);
|
printf("Nombre d'erreurs restantes : %hu\n", essaisRestants);
|
||||||
printf("Saisissez une lettre : \n");
|
printf("Saisissez une lettre : ");
|
||||||
|
demandeLettre = scanf("%c\n", &lettre);
|
||||||
|
if(demandeLettre == 1) {
|
||||||
// vérification si lettre dans le mot
|
// vérification si lettre dans le mot
|
||||||
|
if(lettreDansMot(mot, tailleMot, &lettre) == 1) {
|
||||||
// si oui
|
printf("La lettre %c est dans le mot !\n", lettre);
|
||||||
printf("La lettre x est dans le mot !\n");
|
|
||||||
// verification partie gagner
|
// verification partie gagner
|
||||||
printf("Le mot est ");
|
printf("Le mot est %s\n", mot);
|
||||||
return 1;
|
return 1;
|
||||||
|
} else {
|
||||||
// si non
|
printf("La lettre %c n'est pas dans le mot !\n", lettre);
|
||||||
printf("La lettre x n'est pas dans le mot !\n");
|
|
||||||
essaisRestants--;
|
essaisRestants--;
|
||||||
|
}
|
||||||
|
} else perror("Error");
|
||||||
|
|
||||||
// verification plus d'essais restants
|
// verification plus d'essais restants
|
||||||
if(essaisRestants == 0) finDuJeu = 1;
|
if(essaisRestants == 0) finDuJeu = 1;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
free(mot);
|
free(mot);
|
||||||
|
|
Reference in a new issue