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

  FORUM HardWare.fr
  Programmation
  C

  Problème avec les double float

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème avec les double float

n°1254099
barca6
Posté le 27-11-2005 à 11:36:35  profilanswer
 

Bonsoir,
J'ai un problème avec mes double float lors de l'execution. Quand j'entre une valeur pour mon double, le programme n'arrive pas à scanner la valeur, donc impossible de l'utiliser. Il lui donne une valeur de 0.000000 avec n'importe que lnombre entré... le début de mon programme est le suivant:
#include <stdio.h>
#include <math.h>
 
int main (void)
 
{ double x, tradsin, aapp;
  int n;
 
  printf ("Donnez la valeur de x en degre: \n" );
  scanf ("%f", &x);
   
  printf ("Donnez le nombre de termes: \n" );
  scanf ("%f", &n);
   
  tradsin = asin ((M_PI/180)*x);
  printf ("sin(%f) = %f avec sinus standard\n", x, tradsin);
   
  system ("pause" );
}

mood
Publicité
Posté le 27-11-2005 à 11:36:35  profilanswer
 

n°1254110
Taz
bisounours-codeur
Posté le 27-11-2005 à 12:15:12  profilanswer
 

avec les double : scanf("%lf", &x) et %d pour les int
 
 

Code :
  1. #include <stdio.h>
  2. #include <math.h>
  3. /* M_PI n'est pas ANSI */
  4. #ifndef M_PI
  5. #define M_PI 3.1415
  6. #endif
  7. int main(void)
  8. {
  9. double x, tradsin;
  10. int n;
  11. printf("Donnez la valeur de x en degre:" );
  12. fflush(stdout);
  13. scanf("%lf", &x);
  14. printf("Donnez le nombre de termes:" );
  15. fflush(stdout);
  16. scanf("%d", &n);
  17. tradsin = asin((M_PI/180)*x);
  18. printf("sin(%f) = %f avec sinus standard\n", x, tradsin);
  19. return 0;
  20. }

n°1254209
Emmanuel D​elahaye
C is a sharp tool
Posté le 27-11-2005 à 15:46:45  profilanswer
 

Taz a écrit :

avec les double : scanf("%lf", &x) et %d pour les int


Evidemment, tu voulais dire fgets() + strtod() et fgets() + strtol(), mais tu as fait une faute de frappe ;-)

Citation :


Code :
  1. #include <stdio.h>
  2. #include <math.h>
  3. /* M_PI n'est pas ANSI */
  4. #ifndef M_PI
  5. #define M_PI 3.1415
  6. #endif




Pauvret !

#ifndef M_PI
#define M_PI 3.1416
#endif


ou

#ifndef M_PI
#define M_PI 3.14159
#endif


Message édité par Emmanuel Delahaye le 27-11-2005 à 16:58:56

---------------
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/
n°1254227
Taz
bisounours-codeur
Posté le 27-11-2005 à 16:38:41  profilanswer
 

j'ai fait la version simple, ça fait longtemps que j'ai plus la force de sortir la tirade sur fgets + strto*/sscanf.
 
Cela dit, ma remarque sur scanf est bonne : c'est fou le nombre de gens (je dirais 95% en milieu universitaire) font cette faute de format sur scanf avec les double.


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

  Problème avec les double float

 

Sujets relatifs
Problème avec la fonction OnTimer() sous vc++problème avec une pile
[DEBUTANT] Problème héritageProbleme QTJAVA.zip..
problème script shell en bash!probleme php
probleme height: 100%probleme de CSS entre IE6 et FF
Problème avec un softPb avec double
Plus de sujets relatifs à : Problème avec les double float


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