Posez votre question Signaler

[débutant]langage c [Résolu]

yassinee 244Messages postés 15 mai 2005Date d'inscription 26 novembre 2011Dernière intervention - Dernière réponse le 18 nov. 2008 à 13:06
Bonjour,
j'aimerais faire une simple multiplication entre 2 variables donc:
float a=4, b=1/10, var;
var=a*b;
printf("%f",var);
NORMALEMENT le résulta est 4*1/10=0.4 PAR CONTRE le résultat est 0
merci de d'avance
Lire la suite 

[débutant]langage c »

4 réponses
Réponse
+3
moins plus
Salut,

Et non, en C, 1/10 = 0 car c'est une division d'entiers.
Donc le résultat est normal.
Au lieu de : float b=1/10; fais float b=1.0 / 10. Ainsi vaudra 0.1.
Et tout rentrera dans l'ordre ;)

Cdlt
Ajouter un commentaire
Réponse
+0
moins plus
bonjour,
au lieu de faire %f essaie de faire %.2f ça va t'afficher deux chiifres après la virgule.
cordialement.
fiddy - 17 nov. 2008 à 17:29
Oui, ça affichera 0.00 au lieu de 0. Mais ça règle pas le problème ;).
Ajouter un commentaire
Réponse
+0
moins plus
Merci fiddy ça marche
Ajouter un commentaire
Ce document intitulé « [débutant]langage c » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook