Pbm calcul résultat en C (débutante)

Résolu/Fermé
titfanmkreole Messages postés 8 Date d'inscription dimanche 29 novembre 2009 Statut Membre Dernière intervention 22 février 2010 - 22 févr. 2010 à 22:01
titfanmkreole Messages postés 8 Date d'inscription dimanche 29 novembre 2009 Statut Membre Dernière intervention 22 février 2010 - 22 févr. 2010 à 22:21
Bonjour,
je repose ma question car je l'avais pas bien titrée et n'était pas connectée en tt que membre.

je tente cette "opération" ci :



{
double resultat = 0.0;
int nombre1 = 0, nombre2 = 0;


printf("Entrez le nombre 1 : ");
scanf("%d", &nombre1);
printf("Entrez le nombre 2 : ");
scanf("%d", &nombre2);

resultat = nombre1 / nombre2;

printf ("%d / %d = %f\n", nombre1, nombre2, resultat);

return 0;
}

et le résultat pour 10/3 me donne 3.00000000
j'aimerais savoir où es mon erreur car j'ai bo réfléchir, essayer d'autres changement, je trouves pas comment avoir le bon résultat.
Merci d'avance a ceux qui voudront bien m'aider.

Configuration: Windows 7 / Firefox 3.6
A voir également:

2 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 836
22 févr. 2010 à 22:18
Bonsoir,

En fait, il n'y a pas d'erreur. En C, 10/3 = 3 en tant que division d'entier.
Pour obtenir 3.333, il faut caster. Ce qui donnerait resultat=(double)nombre1/nombre2;

Cdlt,
0
titfanmkreole Messages postés 8 Date d'inscription dimanche 29 novembre 2009 Statut Membre Dernière intervention 22 février 2010 1
22 févr. 2010 à 22:21
merciiii ;-)
réponse simple et rapide
0