AccueilCodes sourcesFreewaresArticlesRéponsesRechercheVotre avisNewsMon blogLiensContact
Samedi 21 Juin 2025

Valid HTML 4.01 Transitional

126 codes sources48 articles77 news24 Liens15 avis9 réponses.
Pourquoi certains calculs utilisant des réels sont faux ?

Les réels sont issus d’un codage binaire en virgule flottante. Ce codage est appelé IEEE 754. IEEE étant L’Institute of Electrical and Electronics Engineers qui a créé cette norme de codage.

 

Ce codage IEEE est utilisé par quasiment tous les langages de programmation.

 

Comment fonctionne ce codage ?

 

En codage binaire, chaque 1 à droite de la virgule est une fraction de deux: 1/2, 1/4, 1/8, 1/16, etc.

L'imprécision du codage binaire concerne les chiffres à droite de la virgule.

 

Par exemple 0.75 en décimal s'écrit 0.11 en binaire (1/4 + 1/2) ce qui ne pose aucun souci de codage et de précision.

 

Prenons le cas de 0.8. Il s’écrit 1/2 + 1/4 + 1/32 + 1/64 + 1/1024 + 1/2048 + 1/……..+ 1/…….+…..

Il est impossible à obtenir en additionnant des fractions de 2. Si on choisit de s'arrêter à 10 chiffres après la virgule, 0.8 en décimal s'écrira 0.1100110011 en binaire. Or ce résultat ne correspond pas à 0.8 exactement.

 

Dans le cas de WinDev, la solution est simple, il faut utiliser les monétaires pour les calculs.

Liste des articles
®2006 - codel5g.com