Problème de précision - Python - Programmation
Marsh Posté le 12-04-2006 à 12:23:11
20/600 = 0 en calcul entier. informatique ou pas. si tu veux faire du cacul flottant (approximation des réels) alors utilise des float comme opérandes et fait 20.0/600.0
Marsh Posté le 12-04-2006 à 12:25:48
Ok merci
(J'ai l'habitude de C/C++ et il n'y a pas besoin de faire ça normalement)
Marsh Posté le 12-04-2006 à 12:40:42
corpio a écrit : (J'ai l'habitude de C/C++ et il n'y a pas besoin de faire ça normalement) |
#include <stdio.h> |
$ cc test.c |
EDIT : comme le dit Taz, un calcul entier retourne un résultat entier.
Marsh Posté le 12-04-2006 à 12:52:54
Taz a écrit : 20/600 = 0 en calcul entier. informatique ou pas. si tu veux faire du cacul flottant (approximation des réels) alors utilise des float comme opérandes et fait 20.0/600.0 |
Elmoricq a écrit : EDIT : comme le dit Taz, un calcul entier retourne un résultat entier. |
En Python, ça va changer avec la mise en place de la PEP 238 "Changing the Division operator", qui est déjà disponible sous forme de __future__ import:
Code :
|
Ce comportement passera (normalement) en comportement par défaut avec Python 3.
Marsh Posté le 12-04-2006 à 12:21:08
Slt,
Je veux récupérer le résultat d'une division (ex.: 20/600=0.03333) mais lorsque je regarde le contenu de ma variable je n'ai que 0.0 pour un float.
Je ne devrais pas avoir une meilleure précision ???
Comment remédier à ce problème ??