salut a tous
j'ai un pb numerique. quand je fais int i = ((float)log(8)/log(2)) j'obteint une valeur incorrecte (qui devrai etre 3). (2^3=8).
existe t-il une bibliothèque qui renvoie directement le logarithme à base X d'un reel?
merci
salut a tous
j'ai un pb numerique. quand je fais int i = ((float)log(8)/log(2)) j'obteint une valeur incorrecte (qui devrai etre 3). (2^3=8).
existe t-il une bibliothèque qui renvoie directement le logarithme à base X d'un reel?
merci
Ben oui, les arrondis, c'est pas génial
Si tu veux le logarithme d'un nombre en base 2, regarde du côté de l'écriture binaire peut-être.
Quel compilateur / plate-forme utilise tu ?
A priori, ton compilo doit dater un peu car l'appel de la fonction log sur un entier est normalement
ambigu.
Pour être tout à fait sûr que les résultats sont errornés essaie de regarder le résultat de :
Personnellement, gcc 3.3 me fourni la réponse correcte.
Code : Sélectionner tout - Visualiser dans une fenêtre à part double i = log(8.0) / log(2.0)
Partager