Programmation C

Bonjour,

float variable;
int N=100;
int nza=145;

variable = N/nza;
printf("%f\n", variable);

Pourquoi il m'affiche 0 au lieu de 0.689 ?

Merci

2 réponses

  1. Bonjour,

    En C, la division de 2 nombres entier est Euclidienne, on obtient donc un nombre entier.
    Pour obtenir une opération flottante, il faut forcer au moins un des 2 à être flottant.
    variable = (float)N / nza;
    Donne le résultat escompté.
    0
    1. Modérateur
      Par ce que N et nza sont des entiers.
      0