['float' ou '!float' lors d'une saisie au KB] [Fermé]

Signaler
Messages postés
3
Date d'inscription
lundi 25 juillet 2005
Statut
Membre
Dernière intervention
9 août 2005
-
microninja
Messages postés
3
Date d'inscription
lundi 25 juillet 2005
Statut
Membre
Dernière intervention
9 août 2005
-
Salut tout le monde ! ;)
J'aimerais savoir comment on fait pour qu'un prog écrit en 'C' puisse distinguer un float (dt le prog a besoin pour s'exécuter) et d'autre chose qu'un float , et ce , lors de la saisie d'un caractère au clavier .
Pour être plus concret : Supposons qu'un programme (en 'C') cherchant les racines d'un polynôme demande de saisir les coeficients de celui-ci , qui sont des 'float' , et ce au biais de la comde : 'cin' par exple ; Imaginer ce qui se passe lorsqu'un utilisateur tape des 'char' , j'ai fais ça et le prog s'est carèment planté (boucle sans sortie ...) ou qlqs fois il génére des erreurs 'mathématiques' (résultats faux et érronés) !!
cordialement , /* microzen */

2 réponses

Messages postés
488
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
15 mars 2009
156
salut

quand je fais ça, je met la saisie utilisateur dans une chaine
(char *machaine)
je contrôle la chaine afin de vérifier qu'il n'y a que des chiffres et un "." ou un "," maximum, car rien ne peut empêcher l'utilisateur de taper ce qu'il veut.
quand c'est correct, je fais
sprintf(machaine, "%f", monfloat);

(#include <stdio.h>)

cordialement
microninja
Messages postés
3
Date d'inscription
lundi 25 juillet 2005
Statut
Membre
Dernière intervention
9 août 2005

Grand MERCI Blurk ! C'est très sympa !!
Je vais essayer comme tu l'a indiqué ;)
à bientôt , #microninja#
Messages postés
488
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
15 mars 2009
156
oups! petite rectification!

sscanf (machaine,"%f", &monfloat);


cordialement
microninja
Messages postés
3
Date d'inscription
lundi 25 juillet 2005
Statut
Membre
Dernière intervention
9 août 2005

Merci Bien !!
à bientôt , #microninja#