Bonjour,
J'ai une question dont j'imagine la réponse comme assez simple, mais je n'ai pas réussi à la trouver pour l'instant...
J'ai un double qui contient la valeur 2,3.
J'ai besoin de récupérer sous forme d'entier (long, int) la partie décimale c'est à dire 3.
J'ai essayé "bêtement" de la façon suivante :
Et bien, partieDecimale = 2
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 double nbAVirgule = 2.3; long partieEntiere = (long)nbAVirgule; long partieDecimale = nbAVirgule*10 - partieEntiere*10;
Alors que j'ai bien partieEntiere = 2.
Je me suis dit que c'est ma conversion en long pour obtenir partieDecimale qui était la cause, donc j'ai testé la chose suivante :
Vous me direz que ça revient au même... mais ce qui est marrant c'est que tmp est bien égal à 3 , partieDecimale restant égale à 2...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 double nbAVirgule = 2.3; long partieEntiere = (long)nbAVirgule; double tmp = nbAVirgule*10 - partieEntiere*10; long partieDecimale = (long)tmp;
Merci de bien vouloir m'éclairer sur la bonne façon de procéder pour isoler sous forme d'entier la partie décimale d'un nombre...
Partager