Void
Résolu
robocopolo
Messages postés
93
Statut
Membre
-
fiddy Messages postés 11653 Statut Contributeur -
fiddy Messages postés 11653 Statut Contributeur -
Bonjour,
Je dois faire un programme de pile ou face en langage C,
J'ai fait un module avec statistiques.c et statistiques.h . Dans statistiques.c j'ai fait un void qui prend en paramètre plusieurs variables que je veux afficher dans ce void.
Le soucis est que l'affichage est complètement faux
voici le code du void dans statistiques.c :
#include "statistiques.h"
#include <stdio.h>
void statistiques(float nombre_points_obtenus, float nombre_tentatives, float pourcentage_reussite_pile, float pourcentage_reussite_face, float pourcentage_reussite_joueur, int reussite_consecutive){
printf("Votre total de point obtenus est de:%.2f\n ", nombre_points_obtenus);
printf("Votre nombre total de tentatives est de : %.2f\n ", nombre_tentatives);
printf("Votre pourcentage des tentatives donnant le cote pile : %.2f pourcent\n ", pourcentage_reussite_pile * 100);
printf("Votre pourcentage des tentatives donnant le cote face : %.2f pourcent\n ", pourcentage_reussite_face * 100);
printf("Votre pourcentage de reussite est de %.2f pourcent\n ", pourcentage_reussite_joueur * 100);
printf("Votre nombre maximal de tentatives consecutives est de %d\n ", reussite_consecutive);// affichage des statistiques
}
et voici ce que j'ai mis dans main.c :
statistiques(nombre_points_obtenus, nombre_tentatives, pourcentage_reussite_pile, pourcentage_reussite_face, pourcentage_reussite_joueur, reussite_consecutive);
Avez-vous une solution ?
P.S. : dans le main.c, statistiques est souligné
Je dois faire un programme de pile ou face en langage C,
J'ai fait un module avec statistiques.c et statistiques.h . Dans statistiques.c j'ai fait un void qui prend en paramètre plusieurs variables que je veux afficher dans ce void.
Le soucis est que l'affichage est complètement faux
voici le code du void dans statistiques.c :
#include "statistiques.h"
#include <stdio.h>
void statistiques(float nombre_points_obtenus, float nombre_tentatives, float pourcentage_reussite_pile, float pourcentage_reussite_face, float pourcentage_reussite_joueur, int reussite_consecutive){
printf("Votre total de point obtenus est de:%.2f\n ", nombre_points_obtenus);
printf("Votre nombre total de tentatives est de : %.2f\n ", nombre_tentatives);
printf("Votre pourcentage des tentatives donnant le cote pile : %.2f pourcent\n ", pourcentage_reussite_pile * 100);
printf("Votre pourcentage des tentatives donnant le cote face : %.2f pourcent\n ", pourcentage_reussite_face * 100);
printf("Votre pourcentage de reussite est de %.2f pourcent\n ", pourcentage_reussite_joueur * 100);
printf("Votre nombre maximal de tentatives consecutives est de %d\n ", reussite_consecutive);// affichage des statistiques
}
et voici ce que j'ai mis dans main.c :
statistiques(nombre_points_obtenus, nombre_tentatives, pourcentage_reussite_pile, pourcentage_reussite_face, pourcentage_reussite_joueur, reussite_consecutive);
Avez-vous une solution ?
P.S. : dans le main.c, statistiques est souligné
7 réponses
fiddy
Messages postés
11653
Statut
Contributeur
1 847
Non, ce n'est pas %lf qu'il faut mettre mais bien des %f.
Bonjour,
Tu nous en dis pas assez.
Le soucis est que l'affichage est complètement faux
Qu'est-ce qui est faux précisément ? As-tu un exemple ?,
Le formatage ? Les valeurs ?
Comment sont définies les valeurs entrant en paramètre ?
En plus ton code est vraiment illisible. Pour la prochaine fois, merci de poster en utilisant les balises "code" (à droite du bouton souligné).
Tu nous en dis pas assez.
Le soucis est que l'affichage est complètement faux
Qu'est-ce qui est faux précisément ? As-tu un exemple ?,
Le formatage ? Les valeurs ?
Comment sont définies les valeurs entrant en paramètre ?
En plus ton code est vraiment illisible. Pour la prochaine fois, merci de poster en utilisant les balises "code" (à droite du bouton souligné).
En fait, comme j'utilise visual studio, je peux mettre des points d'arrêt.
Donc, avant le passage dans la procédure void, les valeurs sont correctes.
Quand je mets un point d'arrêt juste au début du void, les valeurs sont correctes aussi, mais quand je mets le point d'arrêt à partir du premier printf, les valeurs changent. Donc ce n'est pas dans le programme principal mais dans la procédure qu'il y a un problème...
Donc, avant le passage dans la procédure void, les valeurs sont correctes.
Quand je mets un point d'arrêt juste au début du void, les valeurs sont correctes aussi, mais quand je mets le point d'arrêt à partir du premier printf, les valeurs changent. Donc ce n'est pas dans le programme principal mais dans la procédure qu'il y a un problème...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Problème résolu !!!!!!!!!!!!!!!!!! (YES, je suis trop fort !!! )
Voila où était le soucis: j'avais fait 1 fichiers statistiques.h dans lequel j'avais mis :
#ifndef FONCTIONS_H_
#define FONCTIONS_H_
void statistiques(float nombre_points_obtenus, float nombre_tentatives, float pourcentage_reussite_pile, float pourcentage_reussite_face, float pourcentage_reussite_joueur, int reussite_consecutive);
#endif
Alors que je devais mettre :
#ifndef STATISTIQUES_H_
#define STATISTIQUES_H_
void statistiques(float nombre_points_obtenus, float nombre_tentatives, float pourcentage_reussite_pile, float pourcentage_reussite_face, float pourcentage_reussite_joueur, int reussite_consecutive);
#endif
C'était tout bête, mais en tout cas un grand merci pour votre aide !!!
Voila où était le soucis: j'avais fait 1 fichiers statistiques.h dans lequel j'avais mis :
#ifndef FONCTIONS_H_
#define FONCTIONS_H_
void statistiques(float nombre_points_obtenus, float nombre_tentatives, float pourcentage_reussite_pile, float pourcentage_reussite_face, float pourcentage_reussite_joueur, int reussite_consecutive);
#endif
Alors que je devais mettre :
#ifndef STATISTIQUES_H_
#define STATISTIQUES_H_
void statistiques(float nombre_points_obtenus, float nombre_tentatives, float pourcentage_reussite_pile, float pourcentage_reussite_face, float pourcentage_reussite_joueur, int reussite_consecutive);
#endif
C'était tout bête, mais en tout cas un grand merci pour votre aide !!!