Jeu du pendu

Résolu
linksys23 Messages postés 140 Statut Membre -  
linksys23 Messages postés 140 Statut Membre -
Bonjour,

je suis en train de réalisé un pendu en C mais je suis coincé je comprends pas pourquoi mon code ne marche pas pourriez-vous m'aider s'il vous plait.

voici mon code :

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include "header.h"

int main(int argc, char *argv[])
{
  char motATrouver[] = "MARRON"; int lettreProposer = 0; long coupsRestant = 10, i = 0; int lettreTrouver[6] = {0};
while (coupsRestant > 0 && gagne(lettreTrouver) == 0)
{
     printf("il vous reste %ld coups\n ", coupsRestant);
     printf("Quel est le mot secret ? ");
for (i = 0 ; i < 6 ; i++)
{
    if (lettreTrouver[i]) 
    printf("%c", motATrouver[i]); 
else
    printf("*");
}  
     printf("\nproposez une lettre : ");
     lettreProposer = lireCaractere();
     strchr(motATrouver, lettreProposer);
if (strchr == NULL)
{
     coupsRestant--;
}
}
     if(gagne(lettreTrouver))
{
     printf("felicitation! tu as trouve le mot cache.\n");
}
else
{
    printf("tu est mort! X_X\n");
}
  system("PAUSE");	
  return 0;
}
Configuration: Windows XP
Firefox 2.0.0.14

14 réponses

  1. linksys23 Messages postés 140 Statut Membre 27
     
    pourrais tu quand même m'envoyer le code avec les bugs que tu a corrigé ?
    1
  2. linksys23 Messages postés 140 Statut Membre 27
     
    faut-il vraiment tout refaire ?
    1
  3. -Shadow- Messages postés 2148 Date d'inscription   Statut Membre Dernière intervention   270
     
    Tu dois mettre des références aux valeurs déclarées.
    0
  4. linksys23 Messages postés 140 Statut Membre 27
     
    qu'entends tu par des références?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. -Shadow- Messages postés 2148 Date d'inscription   Statut Membre Dernière intervention   270
     
    Heu oublie!

    Tu pourrais me passer le fichier HEADER.H?

    Apparemment il me le faut pour compiler le projet.
    0
  7. linksys23 Messages postés 140 Statut Membre 27
     
    oui tient voici les fonctions qui vont avec:

    char lireCaractere() 
    { 
        char caractere = 0;
     
        caractere = getchar(); 
        caractere = toupper(caractere); 
     
        
        while (getchar() != '\n') ;
     
        return caractere; 
     
    }
    
    int gagne(int lettreTrouver[])
    {
        long i = 0;
        int joueurGagne = 1;
        for(i = 0; i < 6; i++)
    {
        if (lettreTrouver[i] == 0)
    {
        joueurGagne = 0;
    }
    }
        return joueurGagne;
    }
    
    0
  8. -Shadow- Messages postés 2148 Date d'inscription   Statut Membre Dernière intervention   270
     
    Voilà ce qui me manquait pour compiler le pj! ^^

    Je vais de ce pas faire le header et compiler le pj.
    0
  9. -Shadow- Messages postés 2148 Date d'inscription   Statut Membre Dernière intervention   270
     
    en effet ça ne marche pas.

    je regarde un peu le code et je te dis ce qu'il faudra faire.
    0
  10. linksys23 Messages postés 140 Statut Membre 27
     
    très bien merci c'est gentil de prendre un peu de ton temps pour m'aider.
    0
  11. -Shadow- Messages postés 2148 Date d'inscription   Statut Membre Dernière intervention   270
     
    à mon avis tout est à refaire.

    J'ai néanmoins corrigé quelques bugs.
    0
  12. -Shadow- Messages postés 2148 Date d'inscription   Statut Membre Dernière intervention   270
     
    Révise les codes, je crois que ça vient de là. (pléonasme lol)

    Pour la correction des bugs, j'ai quasiment rien fait.
    0
  13. linksys23 Messages postés 140 Statut Membre 27
     
    très bien merci de m'avoir aider je vais revoir un peu tout mon code pour essayer de faire marcher ce jeu et je compte bien y arriver!
    0
  14. -Shadow- Messages postés 2148 Date d'inscription   Statut Membre Dernière intervention   270
     
    Bonne chance! ;)
    0
  15. linksys23 Messages postés 140 Statut Membre 27
     
    voila j'ai tous recommencé et voici mon nouveau code, il marche même si, lorsque l'on a trouvé le mot, il n'affiche pas "bravo! tu as gagné!" ça devrait pas être trop difficile à corriger et je m'en occupe dès que j'ai le temps:
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <ctype.h>
    #include "header.h"
    
    int main(int argc, char *argv[])
    {
    char motATrouver[] = "COUCOU"; int lettreEntree[6] = {0}; long coupsRestants = 10, i = 0, lettre = 0;
    
     printf("Bienvenue dans mon pendu\n\n");
    while(coupsRestants > 0 || !gagne(lettreEntree) == 0)
     {    
        printf("il vous reste %ld coups\n", coupsRestants);
        printf("\nProposez une lettre en majuscule seulement : ");
    lettre = lireCaractere(); //on lit le caractère
    
    if(strchr(motATrouver, lettre) != NULL) 
      {
        for(i = 0; i < 6; i++) 
        { 
        if(lettre == motATrouver[i])
        lettreEntree[i] = 1;
        if(lettreEntree[i] != 0) //si une des valeurs du tableau lettreEntree vaut vrai tu l'affiche
        printf("%c", motATrouver[i]);  
        else
        printf("*"); //sinon tu affiche une étoile
        }
      }
    else
      {
        coupsRestants--;
      }
     } 
     if(gagne(lettreEntree))
     printf("Bravo! tu as gagné!\n");
     else
     printf("Oh non! tu est mort! X_X\n");                  
      system("PAUSE");	
      return 0;
    }
    


    merci encore une fois de m'avoir aidé finalement j'ai bien fait de tout recommencé, mon code m'a parru plus clair et plus compréhensible. :)
    0