Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

calcul sous python

Posté par
lebesgue
04-08-19 à 15:00

Bonjour,

Bonjour à tous,

J'ai remarqué quelque chose sous python que je ne m'explique pas.
Sur des calculs tout bêtes, si je demande :
0.1+0.2, j'obtiens 0.30000000000000004, donc la partie décimale est "parasitée" par un 4 qui n'a rien à faire là...
Par contre, si je fais 0.1+0.3, j'obtiens bien 0.4, de même si je fais 0.1+0.4, j'obtiens bien 0.5...
J'utilise Pyzo.

D'où cela vient il?

Posté par
verdurin
re : calcul sous python 04-08-19 à 17:34

Bonsoir,
cela provient du fait que les calculs sont faits sur des valeurs approchées écrites en binaire.
Et que 0,1 ; 0,2 ; 0,3 et 0,4 ne sont pas représentables exactement en écriture binaire.

Posté par
alb12
re : calcul sous python 04-08-19 à 19:02

salut,

Posté par
lebesgue
re : calcul sous python 04-08-19 à 23:44

Merci pour les explications très claires et le lien donné.
Je ne soupçonnais pas l'existence de cette problématique mais c'est vrai qu'en prenant le temps d'y réfléchir c'est logique.

Posté par
co11
re : calcul sous python 05-08-19 à 21:18

Bonsoir,
dams le même genre regarder sur tableur la suite definie (par exemple) par :
U(0) = 0,3 et U(n+1) = 11U(n) - 3
D'ailleurs ça vaut le coup de comparer ce qu' on obtient sur excel et sur libre office



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1741 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !