ChronoMath, une chronologie des MATHÉMATIQUES
à l'usage des professeurs de mathématiques, des étudiants et des élèves des lycées & collèges

  Fonctions d'arrondis en Javascript et sur tableur        JavaScript  |  Le Tableur 

Que font ces petits programmes sachant que Math.floor désigne la partie entière de x ?

  fonction partie entière

1

JavaScript :  function arr(x)
 {
 u=Math.floor(Math.abs(x)*10000+0.5)/10000
 if (x < 0) {u = -u}
 return u
 }

2

Tableur :  =signe(x)*arrondi(abs(x);3)
     

3

JavaScript :  function arr(x)
 {
 return Math.floor(10*x + 0.9)/10
 }

4

Tableur :  =arrondi(x + 0,04;1)
     

5

Tableur :  =si(x = ent(x); x ; si((x - ent(x))*10 < 5 ; ent(x) + 0,5 ; ent(x)+1))

Si vous séchez après avoir bien cherché :


© Serge Mehl - www.chronomath.com

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.  Il s'agit de l'arrondi d'un nombre x à 0,0001 près :

JavaScript :      

On passe en valeur absolue; on multiplie par 10 000 et on ajoute 0,5 : si une retenue se crée, c'est que le chiffre des cent millièmes est au moins égal à 5; ainsi le chiffre des dix millièmes (devenu les unités) augmente de 1. On prend la partie entière et on redivise par 10 000. Si le nombre était négatif, on récupère son signe.

D'une façon générale, l'arrondi à 10-n d'un nombre N est obtenu de la sorte :

1. on multiple N par 10n
2. on ajoute 0,5
3. on prend la partie entière : ce qui arrondit N10n à 10-n
4. on redivise par 10n.

Arrondi et valeur approchée :

2.  Il s'agit de l'arrondi usuel d'un nombre x à 0,001 près sur tableur :

No comment !

3.  Valeur approchée d'un nombre x à 0,1 près par excès en JavaScript : Math.floor(10*x + 0.9)/10

Rappelons tout d'abord qu'un arrondi au dixième (resp. au centième, à l'unité, etc.) consiste à prendre la valeur approchée au dixième (resp. au centième, à l'unité, etc.) la plus proche. Dans le cas présent, il s'agit d'une valeur approchée par excès :

Notons N = n,dc... un nombre où n désigne les unités, d désigne le chiffre des dixièmes et c le reste de la partie décimale:

N = x + 0,1d + 0,01c

donc :

10N = 10x + d + 0,1c

On ajoute 0,9 à 10N, ce qui crée une retenue qui incrémente d de 1 lorsque c n'est pas nul, et le tour est joué :

Lorsque c est nul, alors N = n,d : c'est un nombre à une seule décimale (comme 3,1). 10N = 10n + d et le fait d'ajouter 0,9 ne crée aucune retenue retenue. La formule d'arrondi ne modifie pas N.

4.  Valeur approchée d'un nombre x à 0,1 près par excès sur tableur : =ARRONDI(X+0,04;1)

L'ajout de 0,04 dans la formule s'explique par le fait que la fonction ARRONDI d'Excel "ajoute déjà" 0,5 comme dans le cas 1 en multipliant préalablement X par 10. Il suffit donc d'ajouter 0,04 à X.

Mais on peut écrire tout simplement avec Microsoft Excel : =ARRONDI.SUP(X;1)

5. Il s'agit là de l'approximation d'un nombre x à 0,5 près par excès :

si(x = ent(x); x ; si(x - ent(x) < 0,5 ; ent(x) + 0,5 ; ent(x)+1))

Le nombre x - ent(x) est la partie décimale de x. Si cette partie est nulle, la formule retourne x. Sinon la partie décimale est arrondie à 0,5 si elle est inférieure à 0,5 et dans le cas contraire, x est arrondi à l'entier supérieure.

Dans le cas d'une moyenne, par exemple, il s'agira d'un arrondi au demi-point supérieur.


© Serge Mehl - www.chronomath.com