• # Exemple simple

    Posté par . En réponse au journal SQL Decimal vs Double. Évalué à 8.

    Puisque tu veux un exemple simple : je te demande de diviser 4.50 € en deux part de 7% et 93% en utilisant l'arrondi bancaire au centime.

    • Calcul exact:
      • 4.5*.07 = .315, en arrondi bancaire .32
      • 4.5*.93 = 4.185, en arrondi bancaire 4.18
      • Somme: .32 + 4.18 = 4.50
    • Calcul sur les flottants
      • 4.5*.07 = .315+ε (avec ε positif), en arrondi bancaire .32
      • 4.5*.93 = 4.185+ε (avec ε positif), en arrondi bancaire 4.19
      • Somme: .32 + 4.19 = 4.51

    On peut trouver le même problème avec les autres modes d'arrondi. Le problème, c'est qu'on a un calcul qui nous emmène pile sur la frontière de décision, et quelque soit l'erreur qu'on fait, on peut être amené à prendre une mauvaise décision.