Page 1 sur 1

Arrondir un chiffre à 0.05 en dessous

Posté : 31 juil. 2018, 12:05
par alecsy
Bonjour à tous,

Je cherche à arrondir un nombre à 0.05 près.
Avant j'utilisais la fonction round($val/0.05)*0.05 qui marchait très bien.
Sauf que j'ai voulu arrondit automatiquement à l'inférieur et là je me suis retrouvé à utiliser floor à la place de round : floor($val/0.05)*0.05

Cela marche dans 99% des cas sauf certaines fois où j'ai déjà une valeur arrondi comme 1.60 qu'il arrondi à 1.55
C'est très bizarre car il ne le fait pas avec toutes les valeurs déjà arrondi.

Une idée pour m'aider ?

Merci

Re: Arrondir un chiffre à 0.05 en dessous

Posté : 01 août 2018, 08:05
par Spols
Il faut voir d'où provient ton 1.60, si c'est en fait un 1.599999999999999999999999999999... ton calcul donnera 1.55 normal. mais si c'est bien un 1.600000000000000000000000... alors ca devrait être bon.

Re: Arrondir un chiffre à 0.05 en dessous

Posté : 01 août 2018, 10:36
par alecsy
Le 1.60 vient d'une table mysql où il est stocké en DOUBLE (10,2)

Re: Arrondir un chiffre à 0.05 en dessous

Posté : 01 août 2018, 14:47
par Spols
Il faut voir si tu sais appliquer un arrondi à une décimale de plus que désiré avant stockage ou dès la recup de la base