Comment faire pour corriger les erreurs d'arrondi dans l'arithmétique en virgule flottante

Traductions disponibles Traductions disponibles
Numéro d'article: 214118 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Symptômes

De nombreuses combinaisons d'opérations arithmétiques effectuées sur les nombres à virgule flottante dans Microsoft Excel et Microsoft Works peuvent produire des résultats très légèrement incorrects. Par exemple, l'équation
=1*(.5-.4-.1)
peut donner pour résultat la quantité (-2.78E-17) ou -0.0000000000000000278 à la place de 0.

Cause

Ce comportement n'est pas dû à un problème ou à une limitation dans Excel ou Works ; il est dû à la norme IEEE (Institute of Electrical and Electronics Engineers) 754 relative aux nombres à virgule flottante qui exige que les nombres soient stockés au format binaire.

Contournement

Méthode 1

Pour réduire les effets éventuels de l'inexactitude du stockage des nombres à virgule flottante, utilisez la fonction Round() pour arrondir les nombres au nombre de décimales requis par votre calcul. Par exemple, si vous travaillez avec des devises, vous arrondirez probablement la somme à deux décimales :

=ROUND(1*(0.5-0.4-0.1),2)

Méthode 2

Vous pouvez souvent empêcher les erreurs d'arrondi d'affecter votre travail grâce à l'option Calcul avec la précision au format affiché. Cette option force chaque nombre de la feuille de calcul à prendre la précision affichée.

Remarque L'utilisation de l'option Calcul avec la précision au format affiché peut avoir des effets de calculs cumulatifs susceptibles de rendre vos données de plus en plus inexactes au fil du temps. N'utilisez cette option que si vous êtes certain que la précision affichée permettra à vos données de rester exactes.

Pour utiliser l'option Calcul avec la précision au format affiché, procédez comme suit :
  1. Dans le menu Outils, cliquez sur Options.
  2. Dans l'onglet Calcul, sous Options de classeur, activez la case à cocher Calcul avec la précision au format affiché.
  3. Cliquez sur OK.
Si vous utilisez l'option Calcul avec la précision au format affiché, vous devez utilisez un format numérique spécifique pour afficher les nombres.

Pour appliquer aux cellules un degré de précision spécifique, procédez comme suit :
  1. Sélectionnez les cellules auxquelles appliquer le format.
  2. Dans le menu Format, cliquez sur Cellules.
  3. Dans l'onglet Nombre, sous Catégorie, cliquez sur Nombre.
  4. Dans la zone Nombre de décimales, sélectionnez la précision (le nombre de décimales) souhaitée.
  5. Cliquez sur OK.

Plus d'informations

La norme IEEE 754 permet de stocker les nombres à virgule flottante d'une façon compacte et facile à manipuler. Cette norme est utilisée par les processeurs Intel et la plupart des programmes de PC qui implémentent l'arithmétique à virgule flottante.

Elle spécifie que les nombres doivent être stockés au format binaire afin de réduire l'espace de stockage et de permettre aux instructions arithmétiques binaires intégrées présentes sur tous les microprocesseurs de traiter les données relativement rapidement. Toutefois, certains nombres simples, des nombres décimaux non répétitifs, sont convertis en nombres binaires répétitifs ne permettant pas d'être stockés avec une exactitude parfaite.

Par exemple, le nombre 1/10 peut être représenté dans un système décimal par un nombre décimal simple :
.1
Toutefois, ce même nombre converti au format binaire prend la forme du nombre décimal binaire répétitif suivant :
.0001100011000111000111 (et ainsi de suite)
Ce nombre ne peut pas être représenté dans un espace fini. Par conséquent, il est arrondi d'environ -2.78E-17 lorsqu'il est stocké.

Si plusieurs opérations arithmétiques sont nécessaires pour obtenir un résultat donné, les erreurs d'arrondi peuvent être cumulatives.

Références

Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft.
78113 EXCEL : l'arithmétique en virgule flottante peut fournir des résultats incorrects

Excel 2002 et Excel 2003

Pour plus d'informations sur la façon de modifier la précision d'un calcul, cliquez sur Aide sur Microsoft Excel dans le menu ? (Aide), tapez modifier le mode de calcul des formules dans le Compagnon Office ou l'aide intuitive, puis cliquez sur Rechercher pour afficher les rubriques correspondantes.

Excel 2000

Pour plus d'informations sur la façon de modifier la précision d'un calcul, cliquez sur Aide sur Microsoft Excel dans le menu ? (Aide), tapez Modifier le mode de calcul des formules de Microsoft Excel dans le Compagnon Office ou l'aide intuitive, puis cliquez sur Rechercher pour afficher les rubriques correspondantes.

Propriétés

Numéro d'article: 214118 - Dernière mise à jour: jeudi 13 mai 2010 - Version: 6.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Excel 2000 Standard
  • Microsoft Excel 2002
  • Microsoft Office Excel 2003
Mots-clés : 
kbprb KB214118
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com