La division en langage C
Résolu
sophie85
-
Pacorabanix Messages postés 4122 Date d'inscription Statut Membre Dernière intervention -
Pacorabanix Messages postés 4122 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
pouvez-vous me dire quelle est la commande à utiliser pour arrondir à un centième près le résultat d'une division en langage C.
exemple:
je souhaite avoir pour: 100/3
un résultat de 33.3 et non de 33.3333333333333333
merci :)
pouvez-vous me dire quelle est la commande à utiliser pour arrondir à un centième près le résultat d'une division en langage C.
exemple:
je souhaite avoir pour: 100/3
un résultat de 33.3 et non de 33.3333333333333333
merci :)
Configuration: Windows Vista Internet Explorer 7.0
3 réponses
-
si c'est pour l'affichage, voir les format de printf !
sinon voici une manière :
tu veux faire a/b
alors tu fais la division, tu la multiplie par 10, tu convertis ça en un entier (le résultat sera tronqué) et tu le remets dans un float, puis tu divises par 10.
pour arrondir et non tronquer, alors il faut ajouter 5 après avoir mutliplié par 10. -
On peut faire un truc tordu du genre:
char chaine[32];
double nombre = 100/3;
sprintf(chaine, "%.2lf", nombre);
double resultat = atof(chaine);
C'est tordu mais ça doit aboutir au résultat escompté.
Bonne continuation. -
merci pour vos réponses Loupius et Pacorabanix :)
maintenant le résultat est bien à un centième près
bonne soirée :)