Des mecs chauds en C ?
golemservil
2021-10-15 17:26:45
je débute et je fais un pendu, j'ai réussi mais j'ai fait un truc moche :
https://image.noelshack.com/fichiers/2021/41/5/1634311572-aaa.png
en gros chaque fois que le joueur trouve une lettre, "trouveLettre" se met à 1.
et je veux que le programme dise "ok tous les trouveLettre sont à 1, le joueur a gagné"
ce que j'ai fait marche mais j'ai du tous les écrire comme un teubé, il y a pas plus simple ?
golemservil
2021-10-15 17:29:12
Ma question c'est juste comment je peux mettre une conditon "fais ceci si toutes les cases du tableau sont à 1"
golemservil
2021-10-15 17:30:38
Le 15 octobre 2021 à 17:29:51 :
Oui
merci du up
Fistacle
2021-10-15 17:30:47
Le 15 octobre 2021 à 17:30:38 golemservil a écrit :
Le 15 octobre 2021 à 17:29:51 :
Oui
merci du up
De rien
DriftKing40
2021-10-15 17:31:07
La C Clochette?https://image.noelshack.com/fichiers/2018/13/6/1522530708-jesusgif.gif
bsilv
2021-10-15 17:31:36
Pourquoi pas utiliser un compteur ?
Fistacle
2021-10-15 17:31:43
Le 15 octobre 2021 à 17:31:07 DriftKing40 a écrit :
La C Clochette?https://image.noelshack.com/fichiers/2018/13/6/1522530708-jesusgif.gif
Malaise, dispose
Demonciel
2021-10-15 17:31:56
Tu peux pas comparer directement deux tableaux ? Style:
if TrouveLettre == [1,1,1,1,1]:
En python je sais que c'est possible.
topiquette
2021-10-15 17:32:11
Des mecs chauds en C dans ta région ?
Envoie "C" au 63232 !
Fistacle
2021-10-15 17:32:33
Le 15 octobre 2021 à 17:32:11 topiquette a écrit :
Des mecs chauds en C dans ta région ?
Envoie "C" au 63232 !
Énorme malaise
tarteaucacachie
2021-10-15 17:33:03
int i;
for(i = 0; i < TAILLE_DU_TABLEAU; i++)
{
if(trouvelettre[i] != 1)
{
break;
}
else if(i == TAILLE_DU_TABLEAU - 1)
{
printf("Félicitation .......");
}
}
Demonciel
2021-10-15 17:35:21
Le 15 octobre 2021 à 17:33:03 :
int i;
for(i = 0; i < TAILLE_DU_TABLEAU; i++)
{
if(trouvelettre[i] != 1)
{
break;
}
else if(i == TAILLE_DU_TABLEAU - 1)
{
printf("Félicitation .......");
}
}
C'est impossible de comparer directement deux tableaux en C ? Bordel c'est chiant en fait.
RoccoEstSevere
2021-10-15 17:35:31
Le 15 octobre 2021 à 17:29:12 :
Ma question c'est juste comment je peux mettre une conditon "fais ceci si toutes les cases du tableau sont à 1"
Oui, il faut que tu écrives une boucle for (n) où n représente la longueur de ton tableau, puis pour chaque cellule du tableau soit c'est 1 et tu passes à la suivante, soit c'est 0 et tu sors de la boucle
Fistacle
2021-10-15 17:35:41
Le 15 octobre 2021 à 17:26:45 golemservil a écrit :
je débute et je fais un pendu, j'ai réussi mais j'ai fait un truc moche :
https://image.noelshack.com/fichiers/2021/41/5/1634311572-aaa.png
en gros chaque fois que le joueur trouve une lettre, "trouveLettre" se met à 1.
et je veux que le programme dise "ok tous les trouveLettre sont à 1, le joueur a gagné"
ce que j'ai fait marche mais j'ai du tous les écrire comme un teubé, il y a pas plus simple ?
Fais deux chaînes de caractères
Une A avec la réponse
L'autre B vide, remplie par des espaces ou des "-", comme tu veux, ayant le même nombre de caractères que la réponse
Utilise strchr pour voir si la lettre tapée se trouve dans la réponse A
Occupe toi de remplacer les lettres dans la chaîne B
Compare les deux chaînes avec strcmp(A, B), si ça retourne 0 c'est que c'est égal, donc fin de la partie
Bonne journée
golemservil
2021-10-15 17:35:46
Le 15 octobre 2021 à 17:33:03 :
int i;
for(i = 0; i < TAILLE_DU_TABLEAU; i++)
{
if(trouvelettre[i] != 1)
{
break;
}
else if(i == TAILLE_DU_TABLEAU - 1)
{
printf("Félicitation .......");
}
}
ça marche super merci je vais regarder ça
coolshoeshine
2021-10-15 17:35:51
déjà fais une boucle, les indexs dans le if ça doit te mettre la puce à l'oreille que c'est pas la bonne façon de faire.
Donc au lieu de if(trouvelettre[0] == 1 && ... )
fais :
int win = 1 // par défaut on gagne
for (i=0; i<strlen(motAChercher); ++i){
if (trouvelettre[i] != 1){
win = 0 // une lettre n'a pas été trouvée, c'est donc pas gagné.
}
}
Il y a peut-être des erreurs de syntaxe ça fait un bail que j'ai pas fait de C