Python et opérations numériques

Re: Python et opérations numériques

Messagede mr.bococo » 22 Jan 2020, 15:26

En informatique, on utilise de préférence des ENTIERS : pas de pb d'arrondis avec ceux là :lol:

Sinon, le module Decimal permet de calculer avec le minimum d’approximation, évitant les erreurs d’arrondi :

En temps normal :
Code: Tout sélectionner
>>> 0.1 + 0.1 + 0.1 - 0.3   
5.551115123125783e-17  # WTF !!!


Avec le module Decimal
Code: Tout sélectionner
>>> from decimal import Decimal
>>> Decimal("0.1") + Decimal("0.1") + Decimal("0.1") - Decimal("0.3")
Decimal('0.0')



Donc, pour tout ce qui a besoin d’être TRES précis, vous pouvez utiliser Decimal. Ou pas...
Car Decimal est lent : 100 fois plus lent qu’un float (environ).
mr.bococo
 
Messages: 68
Inscription: 03 Oct 2012, 12:53
Académie: LYON
Poste: Enseignant en Lycée

Précédente

Retourner vers Informatique et Numérique

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité