Réalisation d'un jeu: le pendu
Fermé
jeffrey
-
Modifié le 8 mai 2017 à 18:19
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 - 10 mai 2017 à 14:13
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 - 10 mai 2017 à 14:13
A voir également:
- Jeu du pendu en c
- Jeu du pendu - Télécharger - Vie quotidienne
- 94 jeu - Télécharger - Puzzle & Réflexion
- Jeu zuma - Télécharger - Jeux vidéo
- Jeu 94 degrés - Télécharger - Divers Jeux
- Logo jeu - Télécharger - Jeux vidéo
3 réponses
Felice_
Messages postés
265
Date d'inscription
mardi 25 avril 2017
Statut
Membre
Dernière intervention
20 juillet 2017
11
8 mai 2017 à 17:00
8 mai 2017 à 17:00
De l'aide pour ? Elle est où ta question ? Quel est ton problème ?
[Dal]
Messages postés
6194
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
11 octobre 2024
1 092
Modifié le 9 mai 2017 à 13:02
Modifié le 9 mai 2017 à 13:02
Salut jeffrey,
En ligne 14, tu fermes l'accolade de la fonction main, alors que tu as encore du code à la suite.
Les fonctions
Quelque soit ce que fait la fonction
Ce n'est pas parce que le jeu n'est pas "gagné", qu'il est perdu s'il reste des coups à jouer.
Le
C'est mieux de terminer tes printf par
Dal
En ligne 14, tu fermes l'accolade de la fonction main, alors que tu as encore du code à la suite.
Les fonctions
gagne(),
lireCaractere(),
rechercheLettre()ne sont pas implémentées.
Quelque soit ce que fait la fonction
gagne(), ce code parait étonnant :
if (gagne(lettreTrouvee)) printf("\n\nGagne ! Le mot secret etait bien : %s", motSecret); else printf("\n\nPerdu ! Le mot secret etait : %s", motSecret);
Ce n'est pas parce que le jeu n'est pas "gagné", qu'il est perdu s'il reste des coups à jouer.
Le
return 0;devrait être à l'extérieur de la boucle
while, et juste avant l'accolade fermante de la fonction main.
C'est mieux de terminer tes printf par
\n(sauf ceux en lignes 29 et 31).
Dal
Bonjour Dal,
merci de m'avoir répondu, j'ai un autre problème malheureusement:
Mon programme ne marche pas et on m'indique une erreur à la ligne 4 mais pourtant j'ai suivi - au moins une partie - de tes conseils. Si tu peux m'aider à résoudre ce problème, merci :) .
Voilà la phrase d'erreur:
"fatal error: gagne.h: No such file or directory"
merci de m'avoir répondu, j'ai un autre problème malheureusement:
Mon programme ne marche pas et on m'indique une erreur à la ligne 4 mais pourtant j'ai suivi - au moins une partie - de tes conseils. Si tu peux m'aider à résoudre ce problème, merci :) .
Voilà la phrase d'erreur:
"fatal error: gagne.h: No such file or directory"
[Dal]
Messages postés
6194
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
11 octobre 2024
1 092
9 mai 2017 à 19:38
9 mai 2017 à 19:38
gagne.h n'est pas dans le même répertoire que ton programme .c et la compilation échoue avec une erreur.
[Dal]
Messages postés
6194
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
11 octobre 2024
1 092
Modifié le 10 mai 2017 à 14:29
Modifié le 10 mai 2017 à 14:29
Par exemple :
main.c :
gagne.h :
et gagne.c :
les 3 fichiers main.c, gagne.h et gagne.c doivent être dans le même répertoire.
Note que le
Dal
main.c :
#include <stdio.h> #include "gagne.h" #define WORDLEN 6 int main(void) { int lettreTrouvee[WORDLEN] = { 0, 1, 1, 1, 1, 1 }; if (gagne(lettreTrouvee, WORDLEN)) printf("Gagne !\n"); else printf("Le jeu continue...\n"); return 0; }
gagne.h :
#ifndef GAGNE_H #define GAGNE_H int gagne(int * lettreTrouvee, int len); #endif
et gagne.c :
/** * gagne() - test if we have won * @lettreTrouvee: array of booleans * @len: length of array * * if all ints are non-zero, returns true * otherwise return false */ int gagne(int * lettreTrouvee, int len) { int n; for (n=0; n<len; n++) if (!lettreTrouvee[n]) return 0; return 1; }
les 3 fichiers main.c, gagne.h et gagne.c doivent être dans le même répertoire.
Note que le
#include "gagne.h"met le nom de l'entête entre guillemets et non pas entre chevrons, car c'est un entête que le compilateur doit trouver par rapport à l'emplacement de ton source, et non pas un entête d'une bibliothèque.
Dal