Pourquoi la Formule Excel "=MOD(16432350,10)" donne t'elle 9,99999999813735 et pas 0 ?

Anonyme
2024-03-22T11:30:01+00:00

Bonjour,

Je suis plus que perplexe.

Je ne pense pas me tromper en disant que le RESTE de la DIVISION de ... 16432350 ... PAR10 ... devrait être 0 ?

Je me propose donc d'utiliser la Formule ... =MOD(16432350,10)

J'obtiens ... 9,99999999813735

Je suis sur Windows 11 avec Excel 365

Je sais que Excel utilise la représentation en virgule flottante pour stocker les nombres décimaux.

Je comprendrais donc que le résultat soit, par exemple... 0,0999999999813735

Donc proche de ... 0.

Mais ... 9,99999999813735

Proche de ... 10 ?

Si quelqu'un peut me dire où est mon erreur ?

Merci d'avance

Franck

Microsoft 365 et Office | Excel | Pour la maison | Windows

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire

8 réponses

  1. Hecatonchire 54,030 Points de réputation Modérateur bénévole
    2024-03-26T23:50:34+00:00

    Bonsoir,

    Le résultat de MOD n'est pas faux (sauf problème de virgule flottante) mais ne correspond pas au "sens classique" du reste de la division.

    Exemple :

    > Avec 14 / 5 = 2,8

    Partie entière : =ENT(2,8) = + 2

    Reste : =MOD(14 ; 5) = + 4

    Vérification : Partie entière * Diviseur + Reste = 2 * 5 + 4 = 14 (=dividende)

    >Avec -14 / 5 = -2,8

    Point de vue 1 : (le plus classique)

    Partie entière : -2

    Reste : -4

    Vérification : Partie entière * Diviseur + Reste = -2 * 5 - 4 = -14 (OK =dividende)

    Point de vue 2 :

    Partie entière : =ENT(-2.8) = -3

    Reste : =MOD(14 ; 5) = + 1

    Vérification : Partie entière * Diviseur + Reste = -3 * 5 + 1 = -14 (OK =dividende)

    Voir section Entiers relatifs Reste — Wikipédia (wikipedia.org)

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  2. Anonyme
    2024-03-25T12:58:38+00:00

    Merci à tous de vos réponses.

    Pour ma part, je pense qu'il y a un problème de fond.

    Je suis pour ma part un très ancien et très constant utilisateur des produits de la société Microsoft :

    MS-DOS puis WINDOWS

    WORD et EXCEL puis ACCESS et OFFICE

    INTERNET EXPLORER puis EDGE

    Visual Basic et VBA

    J'ai même fait partie des quelques utilisateurs dont le smartphone s'appelait Microsoft LUMIA smartphone sous Windows

    J'ai une grande confiance dans les produits de Microsoft.

    Je n'arrive pas à comprendre que, depuis tout ce temps, les développeurs d'Excel n'aient pas résolu les problèmes de fonctionnement de la fonction MODULO. Et que aujourd'hui, en 2024, les utilisateurs semblent accepter l'idée que "Bon, la fonction MODULO renvoie des résultats complètement faux pour certaines valeurs, gère mal les arrondis dus aux calculs, il arrive que la conversion virgule flottante vers décimal provoque ce genre d'erreur, c'est comme cela, à nous de nous a adapter..."

    J'imagine la tête de mes clients si j'avais développé une application qui, "dans certains cas, renverrait des résultats complètement faux".

    Mesdames, messieurs de Microsoft,

    Il me semble que, finalement, ma question s'adresse plutôt à vous qu'aux dévoués contributeurs de cette communauté.

    Je lance une bouteille à la mer, peut-être ?

    Cordialement

    Franck

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  3. DanielCo 107.7K Points de réputation
    2024-03-23T09:34:52+00:00

    Bonjour Arnaud,

    Tu as raison, on va finir par y arriver...

    Daniel

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire