Citation
Vincent-Xavier JUMEL
En fait, le problème est de trouver un moyen de
tester si c est un entier !
Selon la taille de tes nombres, tu peux essayer de voir si c == (long long int)c
Peut être même (unsigned long long), ce qui donnerait une valeur max de 18,446,744,073,709,551,615 (codage sur 64bits)
Même si tu utilises un double, tu ne peux pas être sûr à 100% que la valeur est bien entière (pour voir le codage [
en.wikipedia.org])
Si il est impératif de ne travailler qu'avec des entiers, sans arrondi, alors il ne faut utiliser que des entiers.
Pour résoudre ton problème, je pense qu'il vaut mieux, comme le disais Nicola, comparer c[^]2[/^] à floor[^]2[/^], et travailler avec des long long.
Dernier detail, les long long ne sont pas ansi, mais une spécificité gcc (parmis d'autres il me semble).
Tu as lu les docs. Tu es devenu un informaticien. Que tu le veuilles
ou non. Lire la doc, c'est le Premier et Unique Commandement de
l'informaticien.
-+- TP in: Guide du Linuxien pervers - "L'évangile selon St Thomas"
Poste le Thursday 24 January 2008 12:33:51