Bonsoir;
Mes opérations me donne des valeurs avec 4 chiffres après la virgule. Je ne veux garder que tris. Comment faire?
Merci d'avance.
Bonsoir;
Mes opérations me donne des valeurs avec 4 chiffres après la virgule. Je ne veux garder que tris. Comment faire?
Merci d'avance.
et plus généralement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 a=12.5453 a=round(1000*a)/1000
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 n=3; a=round(10^n*a)/10^n
Utilisation de la fonction roundn:
- a=12.5453
- a=roundn(a,-3)
Il est d'ailleurs possible de généraliser encore plus cette formule pour ceux qui cherchent à arrondir à des fractions précises.
Disons que tu veuilles arrondir au 1/4 près (0.25), alors :
a=round(4*a)/4
Disons que tu veuilles arrondir au 1/200 près (0.005), alors :
a=round(200*a)/200
Disons que tu veuilles arrondur au 1/1000 près (0.001), alors :
a=round(1000*a)/1000
D'où la formule citée.
Bref, lorsqu'on veut uniquement arrondir à un certain nombre de chiffres après la virgule, alors la formule est celle citée.
Tandis que la formule d'arrondissement aux fractions est tout simplement :
Très utile
Où f est le dénominateur de la fraction (pour arrondir à 3 chiffres après la virgule, alors f=1000 puisqu'on arrondit à 1/1000 = 0.001 [1/0.001 = 1000], pour arrondir à 0.025 près, alors f=40 puisqu'on arrondit à 1/40 = 0.025 [1/0.025 = 40]).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 f=4; a=round(f*a)/f
Si c'est mélangeant de mettre le dénominateur comme f, alors :
Très utile - Option 2
Mais f doit être une fraction unitaire, autrement dit 1/f donne un entier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 f=0.25; a=round(a/f)*f
--------------------------------------------------------------------------
Et si je m'emballe, je peux même continuer en disant que si on veut un nombre arrondi au dividende le plus proche, alors :
Utile
Et le nombre obtenu sera divisible par d. J'ai mis une fraction, mais si on met d=4 et a=121, alors on obtiendra le nouveau a=120, qui est le dividende de 4 le plus proche. C'est la même formule que la précédente, mais je tenais à nuancer qu'ici la valeur d peut être quelconque et on obtiendra alors une valeur divisible par d et pas nécessairement un arrondissement fractionnaire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 d=0.123; a=round(a/d)*d
Si on veut juste arrondir la partie fractionnaire à une partie fractionnaire quelconque, alors :
Moins utile
Et donc, par exemple, avec q=0.15 et a=7.1, on obtiendra le nouveau a=7.15, pour a=7.95 ce serait 7.9 et pour a=7.999, ce serait aussi 7.9, car on n'obtiendra jamais d'arrondissement à 8 puisque 6*0.15 = 0.9 tandis que 7*0.15 = 1.05 > 1, l'arrondissement à 8 se fait donc de 8 à 8.074999.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 q=0.15; a=round((a-fix(a))/q)*q+fix(a)
Trève de plaisanterie, bonne journée,
Éric
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager