Page 1 sur 1

arrondir un résultat

Publié : lun. 03/avr./2017 18:29
par blendman
salut

voilà pour une petite application, j'ai besoin de faire des arrondis. J'ai les paramètres suivants :
- précision : nombre de chiffres après la virgule
- arrondi : pour arrondir.

Par exemple, si j'obtiens 0.015 et que j'ai 2 chiffres après la virgule, je voudrais avoir 0.02

Vous savez comment je peux faire pour obtenir les bons chiffres ?

Merci :)

Re: arrondir un résultat

Publié : lun. 03/avr./2017 19:06
par JohnJohnsonSHERMAN
Tu peux utiliser StrF() qui permet de prendre un nombre voulu de décimales

Code : Tout sélectionner

Debug StrF(3.141596,2)
Par contre si tu veux un nombre (à récupérer avec ValF() depuis cet exemple), tu auras à nouveau tout un tas de décimales, ceci étant du à la méthode assez "approximative" utilisée pour représenter les nombres flottants...
Mais si tu veux simplement ne pas spammer l'utilisateur de décimales, la premiére méthode suffit :)

Re: arrondir un résultat

Publié : lun. 03/avr./2017 20:05
par kernadec
Slt
La fonction round () :wink:
Cordialement

Code : Tout sélectionner

decimale.i=10000

a.d = Round((1.123456*decimale),#PB_Round_Nearest)/decimale
b.d = Round((1.123456*decimale),#PB_Round_Down)/decimale
c.d = Round((1.123456*decimale),#PB_Round_Up)/decimale

Debug StrD(a,4)
Debug StrD(b,4)
Debug StrD(c,4)

Re: arrondir un résultat

Publié : mer. 12/avr./2017 8:02
par blendman
salut

C'est ce que j'utilise (round() et strD()) ;)

Le plus galère a été de trouver la méthode pour utiliser le nombre de décimale, mais comme je laisse le choix à l'utiliser, finalement, je le connais à l'avance ^^.

Merci ;)