99 votes

Javascript utilisant l'arrondi à la dizaine la plus proche

Je voudrais arrondir des entiers en utilisant JavaScript. Par exemple :

10 = 10
11 = 20
19 = 20
24 = 30
25 = 30
29 = 30

186voto

alexn Points 25639

Cela devrait le faire :

Math.ceil(N / 10) * 10;

Où N est l'un de vos numéros.

31voto

kennebec Points 33886

Pour arrondir un nombre au multiple de 10 le plus élevé, ajoutez un au nombre précédent. d'obtenir le plafond Math.ceil d'une division par 10. Multipliez le résultat par dix.

Math.ceil((n+1)/10)*10;

1->10
2->10
3->10
4->10
5->10
6->10
7->10
8->10
9->10
10->20
11->20
12->20
13->20
14->20
15->20
16->20
17->20
18->20
19->20
20->30
21->30
22->30
23->30
24->30
25->30
26->30
27->30
28->30
29->30
30->40
35-> 40
40-> 50
45-> 50
50-> 60
55-> 60
60-> 70
65-> 70
70-> 80
75-> 80
80-> 90
85-> 90
90-> 100
95-> 100
100-> 110

14voto

Niet the Dark Absol Points 154811

Math.round() arrondit au nombre entier le plus proche. Pour arrondir à tout autre chiffre, divisez et multipliez par des puissances de dix.

L'une de ces méthodes est la suivante :

function round(num,pre) {
    if( !pre) pre = 0;
    var pow = Math.pow(10,pre);
    return Math.round(num*pow)/pow;
}

Vous pouvez créer des fonctions similaires pour floor y ceiling . Cependant, peu importe ce que vous faites, 10 ne s'arrondiront jamais à 20 .

7voto

silly Points 4574

Ou ceci

var i = 20;
var yourNumber = (parseInt(i/10, 10)+1)*10;

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X