Nombre à virgule flottante

Définition, exemples et bonnes pratiques

À retenir

  • Sert à stocker des nombres réels (avec décimales).
  • Précision limitée : ils sont souvent une approximation proche de la réalité.
  • Standardisés mondialement par la norme IEEE 754.

Un nombre à virgule flottante est la méthode qu'utilise un ordinateur pour représenter des nombres qui ne sont pas entiers (ceux qui ont une virgule). C'est l'équivalent informatique de la notation scientifique : au lieu d'écrire 0,00001, on écrit 1,0 multiplié par 10 à la puissance -5. La virgule n'est pas fixe, elle « flotte » pour s'adapter à la taille du nombre.

Étymologie

Traduction de l'anglais floating-point. Le terme souligne que la position de la virgule peut varier dynamiquement dans la mémoire de l'ordinateur, contrairement à la « virgule fixe » où le nombre de décimales est déterminé à l'avance.

Exemples d'usage

  • Le nombre 3.14159 utilisé pour des calculs géométriques.
  • Une température de -12.5 degrés enregistrée par un capteur.
  • Le score de 0.007 dans une simulation statistique.

Cas d'usage

On les utilise massivement dans les calculs scientifiques, les moteurs physiques de jeux vidéo (pour les trajectoires), le traitement d'images et de sons, ou encore la géolocalisation. Ils permettent de manipuler des valeurs extrêmement variées, des dimensions d'un atome aux distances entre les galaxies.

Bonnes pratiques

Évitez de comparer deux nombres flottants avec un signe égal (==). À cause de la manière dont ils sont stockés, un calcul qui devrait donner 0,3 pourrait donner 0,3000000000004, ce qui rendrait le test faux. Pour manipuler de l'argent, préférez utiliser des nombres entiers (compter en centimes) pour éviter les erreurs d'arrondi catastrophiques.

Synonymes

flottant float nombre réel (par abus de langage)

Antonymes

nombre entier entier virgule fixe

Conseil

Quand vous débutez en programmation, utilisez le type double par défaut plutôt que float si vous avez besoin de précision, et souvenez-vous qu'un calcul complexe sur des flottants finit toujours par accumuler une petite marge d'erreur.

Questions fréquentes

Pourquoi dit-on que les flottants sont imprécis ?

Parce que l'ordinateur travaille en binaire (base 2). Certains nombres simples en base 10, comme 0,1, n'ont pas de correspondance exacte en binaire, comme 1/3 n'en a pas en décimal (0,333...).

C'est quoi un 'Double' ?

C'est un nombre à virgule flottante qui utilise deux fois plus de mémoire (64 bits au lieu de 32) pour offrir une précision bien plus grande et accepter des nombres plus immenses.