Débutante pbm resultat calcul

titfanmkreole -  
dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

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

2 réponses

  1. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
     
    hello
    forcer une conversion en float
    resultat = (float) nombre1 / nombre2;
    1
  2. john
     
    Bonjour,

    Si tu veux un résultat de type float, il faut diviser des types float...

    Exemple :

    #include <stdio.h>

    int main(){

    float resultat;
    float nombre1, nombre2;

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

    resultat = nombre1 / nombre2;

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

    return 0;
    }

    J.
    0