Je vois que pour le code suivant produit le résultat ci-dessous, une idée sur pourquoi la sortie est comme ça?La fonction pow() de C selon le fichier d'en-tête <math.h> ne fonctionne pas correctement
#include <stdio.h>
#include <math.h>
int main() {
int i = 0;
for(i = 0; i < 10; i++) {
printf("%d\t\t\t%d\t\t\t", i, (int)pow(10, i));
printf("%f\n", pow(10, i));
}
return 0;
}
Sorties:
0 1 1.000000
1 10 10.000000
2 99 100.000000
3 1000 1000.000000
4 9999 10000.000000
5 100000 100000.000000
6 1000000 1000000.000000
7 9999999 10000000.000000
8 99999999 100000000.000000
9 999999999 1000000000.000000
duplication possible de [comportement étrange de la fonction pow] (http://stackoverflow.com/questions/18155883/strange-behaviour-of-the-pow-function) –