Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2868 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Problème avec des types de variables en C...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème avec des types de variables en C...

n°1312008
Clochette ​POWER
Posté le 23-02-2006 à 10:22:42  profilanswer
 

Voila mon programme... bien que tout bète il me pose un problème lorsque MOYENNE est décimal... il la considère comme un entier...
Comment y remédier... expliquez moi... MERCI
 

Code :
  1. #include <stdio.h>
  2. int main (void) {
  3. int VAR, COMPTEUR;
  4. float MOYENNE, SOMME;
  5. SOMME = 0;
  6. COMPTEUR = 0;
  7. printf("Saisissez une suite de nombres positifs s'achevant par un  nombre negatif : \n" );
  8. do {
  9. scanf("%d",&VAR);
  10. if(VAR >= 0) {
  11. SOMME = SOMME + VAR;
  12. COMPTEUR = COMPTEUR + 1;
  13. }
  14. }
  15. while(VAR >= 0);
  16. MOYENNE = SOMME / COMPTEUR;
  17. printf("\nMoyenne des entiers saisis : %d\n",MOYENNE);
  18. return 0;
  19. }

mood
Publicité
Posté le 23-02-2006 à 10:22:42  profilanswer
 

n°1312034
Sve@r
Posté le 23-02-2006 à 10:59:58  profilanswer
 

Clochette POWER a écrit :

Voila mon programme... bien que tout bète il me pose un problème lorsque MOYENNE est décimal... il la considère comme un entier...
Comment y remédier... expliquez moi... MERCI
 

Code :
  1. #include <stdio.h>
  2. int main (void) {
  3. int VAR, COMPTEUR;
  4. float MOYENNE, SOMME;
  5. SOMME = 0;
  6. COMPTEUR = 0;
  7. printf("Saisissez une suite de nombres positifs s'achevant par un  nombre negatif : \n" );
  8. do {
  9. scanf("%d",&VAR);
  10. if(VAR >= 0) {
  11. SOMME = SOMME + VAR;
  12. COMPTEUR = COMPTEUR + 1;
  13. }
  14. }
  15. while(VAR >= 0);
  16. MOYENNE = SOMME / COMPTEUR;
  17. printf("\nMoyenne des entiers saisis : %d\n",MOYENNE);
  18. return 0;
  19. }



Ben "%d" pour l'affichage d'un "float" c'est pas forcément ce qu'il y a de mieux. Ptet que si t'essayais "%f"...
 
Petite remarque en passant: les noms des variables sont usuellement écrits en minuscules, avec parfois une majuscule ou deux pour illustrer le rôle de la variable. ex:

Code :
  1. int nbCaracLu;


Les noms tout en majuscules étant usuellement réservés aux macros...


Message édité par Sve@r le 23-02-2006 à 11:02:44

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
n°1312330
Emmanuel D​elahaye
C is a sharp tool
Posté le 23-02-2006 à 15:03:13  profilanswer
 

Clochette POWER a écrit :

Code :
  1. int VAR, COMPTEUR;
  2. float MOYENNE, SOMME;
  3. scanf("%d",&VAR);
  4. printf("\nMoyenne des entiers saisis : %d\n",MOYENNE);



 
Il y a incohérence entre les formats et les types.
printf()
"%d" : char, short ou int -> texte décimal
"%f" :  float ou double  -> texte décimal à virgule fixe
 
scanf()
"%d" : texte décimal -> int
"%f" :  texte décimal à virgule fixe ou notation scientifique -> float
"%lf" :  texte décimal à virgule fixe ou notation scientifique -> double
 
D'autre part, je déconseille scanf()
 
http://mapage.noos.fr/emdel/notes.htm#saisie
http://mapage.noos.fr/emdel/notes.htm#fichiers
 


Message édité par Emmanuel Delahaye le 23-02-2006 à 15:05:30

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Problème avec des types de variables en C...

 

Sujets relatifs
[résolu]probleme entre fonction et regexprobleme avec getElementById
probleme compilation Qt[visual 2003] [ifstream] problème de tellg en ios::binary
VC++ -> add existing item to a project => problème?!Problème à la noix sur tableau de valeur JS/HTML
Probleme de variables et de boucle (DOS)[js]probleme de champs grisés
problème de redirection 
Plus de sujets relatifs à : Problème avec des types de variables en C...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR