Arrondi (mathématiques)

Le mot "arrondissement" d'une valeur numérique signifie la remplacer par une autre valeur approximativement égale mais de forme plus courte, plus simple ou plus explicite. Par exemple, 23,74 dollars US pourraient être arrondis à 24 dollars US, ou la fraction 312/937 pourrait être arrondie à 1/3, ou l'expression 2 {\displaystyle {\sqrt {2}}} à{\displaystyle {\sqrt {2}}} 1,41.

L'arrondi est souvent fait exprès pour obtenir une valeur plus facile à écrire et à manipuler que l'original. Il peut également servir à indiquer l'exactitude d'un nombre calculé ; par exemple, une quantité qui a été calculée comme étant 123 456 mais dont on sait qu'elle n'est exacte qu'à quelques centaines d'unités près est mieux indiquée comme étant "environ 123 500".

D'autre part, l'arrondi peut introduire une erreur d'arrondi dans le résultat. L'arrondi est presque inévitable dans de nombreux calculs, en particulier lors de la division de deux nombres en arithmétique entière ou à virgule fixe, lors du calcul de fonctions mathématiques telles que les racines carrées, les logarithmes et les sinus, ou lors de l'utilisation d'une représentation en virgule flottante avec un nombre fixe de chiffres significatifs. Dans une séquence de calculs, ces erreurs d'arrondi s'accumulent généralement, et dans certains cas "mal conditionnés", elles peuvent alors rendre le résultat insignifiant.

Il est difficile d'arrondir avec précision les fonctions mathématiques transcendantes, car le nombre de chiffres supplémentaires qui doivent être calculés pour déterminer s'il faut arrondir à la hausse ou à la baisse ne peut être connu à l'avance. Ce problème est connu sous le nom de "dilemme du fabricant de tables" (ci-dessous).

L'arrondissement présente de nombreuses similitudes avec la quantification qui se produit lorsque des quantités physiques doivent être codées par des nombres ou des signaux numériques.

Types d'arrondis

Les problèmes d'arrondi sont typiques :

  • l'approximation d'un nombre irrationnel par une fraction, par exemple π par 22/7 ;
  • approximation d'une fraction à expansion décimale périodique par une fraction décimale finie, par exemple 5/3 par 1,6667 ;
  • en remplaçant un nombre rationnel par une fraction avec un numérateur et un dénominateur plus petits, par exemple 3122/9417 par 1/3 ;
  • le remplacement d'un nombre décimal fractionnaire par un nombre de chiffres inférieur, par exemple 2,1784 dollars par 2,18 dollars ;
  • remplacer un nombre entier décimal par un nombre entier avec plus de zéros à la fin, par exemple 23 217 personnes par 23 200 personnes ; ou, en général,
  • en remplaçant une valeur par un multiple d'un montant déterminé, par exemple 27,2 secondes par 30 secondes (un multiple de 15).

Arrondissement à un échelon déterminé

Le type d'arrondi le plus courant est l'arrondi à un nombre entier ; ou, plus généralement, à un multiple entier d'un certain incrément - tel que l'arrondi à des dixièmes entiers de secondes, à des centièmes de dollar, à des multiples entiers de 1/2 ou 1/8 de pouce, à des dizaines ou des milliers entiers, etc.

En général, l'arrondissement d'un nombre x à un multiple d'un certain incrément m spécifique implique les étapes suivantes :

  1. Divisez x par m, et le résultat sera y ;
  2. Arrondissez y à une valeur entière, appelez-la q ;
  3. Multipliez q par m pour obtenir la valeur arrondie z.

z = r o u n d ( x , m ) = r o u n d ( x / m ) m {\displaystyle z=\mathrm {round} (x,m)=\mathrm {round} (x/m)\cdot m\,}{\displaystyle z=\mathrm {round} (x,m)=\mathrm {round} (x/m)\cdot m\,}

Par exemple, pour arrondir x = 2,1784 dollars à des cents entiers (c'est-à-dire à un multiple de 0,01), il faut calculer y = x/m = 2,1784/0,01 = 217,84, puis arrondir y à l'entier q = 218, et enfin calculer z = q×m = 218×0,01 = 2,18.

Lorsque l'on arrondit à un nombre prédéterminé de chiffres significatifs, l'incrément m dépend de la grandeur du nombre à arrondir (ou du résultat arrondi).

L'incrément m est normalement une fraction finie dans le système de numération utilisé pour représenter les nombres. Pour l'affichage aux humains, cela signifie généralement le système de chiffres décimaux (c'est-à-dire que m est un nombre entier multiplié par une puissance de 10, comme 1/1000 ou 25/100). Pour les valeurs intermédiaires stockées dans les ordinateurs numériques, cela signifie souvent le système de chiffres binaires (m est un nombre entier multiplié par une puissance de 2).

La fonction abstraite à argument unique "round()" qui renvoie un entier à partir d'une valeur réelle arbitraire a au moins une douzaine de définitions concrètes distinctes présentées dans la section sur l'arrondi à l'entier. La fonction abstraite à deux arguments "round()" est formellement définie ici, mais dans de nombreux cas, elle est utilisée avec la valeur implicite m = 1 pour l'incrément et est ensuite réduite à la fonction abstraite équivalente à un seul argument, avec également la même douzaine de définitions concrètes distinctes.

Arrondissement à un nombre entier

La forme d'arrondi la plus élémentaire consiste à remplacer un nombre arbitraire par un nombre entier. Tous les modes d'arrondi suivants sont des implémentations concrètes de la fonction abstraite à argument unique "round()" présentée et utilisée dans les sections précédentes.

Il existe de nombreuses façons d'arrondir un nombre y à un nombre entier q. Les plus courantes sont

  • Arrondir vers le bas (ou prendre le plancher, ou arrondir vers l'infini) : q est le plus grand nombre entier qui ne dépasse pas y.

q = f l o r ( y ) = y = - - y {\displaystyle q=\mathrm {floor} (y)=\gauche\plancher y\droite\plancher =-\gauche\lceil -y\droite\rceil \,}{\displaystyle q=\mathrm {floor} (y)=\left\lfloor y\right\rfloor =-\left\lceil -y\right\rceil \,}

  • arrondi vers le haut (ou prendre le plafond, ou arrondi vers plus l'infini) : q est le plus petit nombre entier qui n'est pas inférieur à y.

q = c e i l ( y ) = y = - - y {\displaystyle q=\mathrm {ceil} (y)=\gauche\lceil y\droite\rceil =-\gauche\l'étage -y\droite\l'étage \,}{\displaystyle q=\mathrm {ceil} (y)=\left\lceil y\right\rceil =-\left\lfloor -y\right\rfloor \,}

  • arrondi vers zéro (ou tronqué, ou arrondi à l'infini) : q est la partie entière de y, sans ses chiffres de fraction.

q = t r u n c a t e ( y ) = sgn ( y ) | y | = - sgn ( y ) - | y | {\displaystyle q=\mathrm {truncate} (y)=\operatorname {sgn}(y)\left\lfloor \left|y\right|\right\rfloor =-\operatorname {sgn}(y)\left\lceil -\left|y\right|\rceil \,}{\displaystyle q=\mathrm {truncate} (y)=\operatorname {sgn}(y)\left\lfloor \left|y\right|\right\rfloor =-\operatorname {sgn}(y)\left\lceil -\left|y\right|\right\rceil \,}

  • arrondi à partir de zéro (ou arrondi à l'infini) : si y est un entier, q est y ; sinon q est l'entier le plus proche de 0 et est tel que y est compris entre 0 et q.

q = sgn ( y ) | y | = - sgn ( y ) - | y | {\displaystyle q=\operatorname {sgn}(y)\left\lceil \left|y\right|\right\rceil =-\operatorname {sgn}(y)\left\lfloor -\left|y\right|\rfloor \,}{\displaystyle q=\operatorname {sgn}(y)\left\lceil \left|y\right|\right\rceil =-\operatorname {sgn}(y)\left\lfloor -\left|y\right|\right\rfloor \,}

  • arrondi au plus proche : q est l'entier le plus proche de y (voir ci-dessous les règles de départage).

Les quatre premières méthodes sont appelées arrondi dirigé, car les déplacements du nombre initial y à la valeur arrondie q sont tous dirigés vers ou à partir de la même valeur limite (0, +∞, ou -∞).

Si y est positif, l'arrondi vers le bas est identique à l'arrondi vers zéro, et l'arrondi vers le haut est identique à l'arrondi à partir de zéro. Si y est négatif, l'arrondi à la baisse est identique à l'arrondi à partir de zéro, et l'arrondi à la hausse est identique à l'arrondi à la baisse. Dans tous les cas, si y est un nombre entier, q est juste y. Le tableau suivant illustre ces méthodes d'arrondi :

y

rounddown
(vers -∞)

roundup
(vers +∞)

roundtowardszero

roundaway
 fromzero

roundtonearest

+23.67

+23

+24

+23

+24

+24

+23.50

+23

+24

+23

+24

+23 ou +24

+23.35

+23

+24

+23

+24

+23

+23.00

+23

+23

+23

+23

+23

0

0

0

0

0

0

−23.00

−23

−23

−23

−23

−23

−23.35

−24

−23

−23

−24

−23

−23.50

−24

−23

−23

−24

-23 ou -24

−23.67

−24

−23

−23

−24

−24

Lorsque de nombreux calculs sont effectués en séquence, le choix de la méthode d'arrondi peut avoir un effet très important sur le résultat. Un exemple célèbre concerne un nouvel indice mis en place par la Bourse de Vancouver en 1982. Il avait été initialement fixé à 1 000 000, et après 22 mois, il était tombé à environ 520 - alors que les cours des actions avaient généralement augmenté au cours de la période. Le problème était dû au fait que l'indice était recalculé des milliers de fois par jour, et était toujours arrondi à la troisième décimale inférieure, de telle sorte que les erreurs d'arrondi s'accumulaient. En recalculant avec un meilleur arrondi, on obtient un indice de 1098,892 à la fin de la même période.

L'égalité des chances

L'arrondissement d'un nombre y au nombre entier le plus proche nécessite une règle de bris d'égalité pour les cas où y est exactement à mi-chemin entre deux nombres entiers, c'est-à-dire lorsque la partie fractionnaire de y est exactement 0,5.

Arrondir à moitié

La règle suivante de bris d'égalité, appelée round half up (ou round half towards plus infinity), est largement utilisée dans de nombreuses disciplines. C'est-à-dire que les valeurs intermédiaires y sont toujours arrondies vers le haut.

  • Si la fraction de y est exactement 0,5, alors q = y + 0,5.

q = y + 0,5 = - - y - 0,5 {\displaystyle q=\left\lfloor y+0,5\right\rfloor =-\left\lceil -y-0,5\right\rceil \,}{\displaystyle q=\left\lfloor y+0.5\right\rfloor =-\left\lceil -y-0.5\right\rceil \,}

Par exemple, selon cette règle, la valeur 23,5 est arrondie à 24, mais -23,5 est arrondie à -23.

C'est l'une des deux règles généralement enseignées dans les cours de mathématiques élémentaires aux États-Unis. []

Sans les fractions de 0,5, les erreurs d'arrondi introduites par la méthode de l'arrondi au chiffre le plus proche seraient assez symétriques : pour chaque fraction qui est arrondie au chiffre supérieur (comme 0,268), il y a une fraction complémentaire (à savoir 0,732) qui est arrondie au chiffre inférieur, du même montant. Lors de l'arrondi d'un grand ensemble de nombres avec des fractions aléatoires, ces erreurs d'arrondi se compensent statistiquement, et la valeur attendue (moyenne) des nombres arrondis est égale à la valeur attendue des nombres originaux.

Cependant, la règle de bris d'égalité à moitié arrondi n'est pas symétrique, car les fractions qui sont exactement 0,5 sont toujours arrondies vers le haut. Cette asymétrie introduit un biais positif dans les erreurs d'arrondi. Par exemple, si la fraction de y se compose de trois chiffres décimaux aléatoires, alors la valeur attendue de q sera supérieure de 0,0005 à la valeur attendue de y. C'est pourquoi l'arrondi au plus proche avec la règle de l'arrondi à la moitié supérieure est également (de manière ambiguë) connu sous le nom d'arrondi asymétrique.

L'une des raisons de l'arrondissement à 0,5 est qu'un seul chiffre doit être examiné. Lorsque l'on voit 17.50000..., par exemple, les trois premiers chiffres, 17,5, détermine que le chiffre serait arrondi à 18. Si la règle inverse était utilisée (arrondi à la moitié inférieure), il faudrait alors examiner toutes les décimales zéros pour déterminer si la valeur est exactement 17,5.

Arrondir à moitié

On peut également utiliser la méthode de l'arrondi à moitié vers le bas (ou vers l'infini) par opposition à la méthode plus courante de l'arrondi à moitié vers le haut (la méthode de l'arrondi à moitié vers le haut est une convention courante, mais n'est rien d'autre qu'une convention).

  • Si la fraction de y est exactement 0,5, alors q = y - 0,5.

q = y - 0,5 = - - y + 0,5 {\displaystyle q=\left\lceil y-0,5\right\rceil =-\left\lfloor -y+0,5\right\rfloor \,}{\displaystyle q=\left\lceil y-0.5\right\rceil =-\left\lfloor -y+0.5\right\rfloor \,}

Par exemple, 23,5 est arrondi à 23, et -23,5 est arrondi à -24.

La règle de bris d'égalité à mi-parcours n'est pas symétrique, car les fractions qui sont exactement 0,5 sont toujours arrondies vers le bas. Cette asymétrie introduit un biais négatif dans les erreurs d'arrondi. Par exemple, si la fraction de y se compose de trois chiffres décimaux aléatoires, alors la valeur attendue de q sera inférieure de 0,0005 à la valeur attendue de y. C'est pourquoi l'arrondi au plus proche avec la règle de l'arrondi à la moitié inférieure est également (de manière ambiguë) connu sous le nom d'arrondi asymétrique.

Arrondir à la moitié du zéro

L'autre méthode de bris d'égalité communément enseignée et utilisée est la moitié ronde à partir de zéro (ou la moitié ronde vers l'infini), à savoir :

  • Si la fraction de y est exactement 0,5, alors q = y + 0,5 si y est positif, et q = y - 0,5 si y est négatif.

q = sgn ( y ) | y | + 0,5 = - sgn ( y ) - | y | - 0,5 {\displaystyle q=\operatorname {sgn}(y)\left\lfloor \left|y\right|+0,5\right\rfloor =-\operatorname {sgn}(y)\left\lceil -\left|y\right|-0,5\right\rceil \,}{\displaystyle q=\operatorname {sgn}(y)\left\lfloor \left|y\right|+0.5\right\rfloor =-\operatorname {sgn}(y)\left\lceil -\left|y\right|-0.5\right\rceil \,}

Par exemple, 23,5 est arrondi à 24, et -23,5 est arrondi à -24.

Cette méthode traite les valeurs positives et négatives de manière symétrique, et est donc exempte de biais global si les chiffres originaux sont positifs ou négatifs avec une probabilité égale. Cependant, cette règle introduira toujours un biais positif pour les nombres positifs, et un biais négatif pour les nombres négatifs.

Il est souvent utilisé pour les conversions de devises et les arrondissements de prix (lorsque le montant est d'abord converti dans la plus petite subdivision significative de la monnaie, comme les centimes d'euro), comme il est facile à expliquer en considérant uniquement le premier chiffre fractionnaire, indépendamment des chiffres de précision supplémentaires ou du signe du montant (pour une stricte équivalence entre le payeur et le bénéficiaire du montant).

La moitié du cycle vers le zéro

On peut également arrondir la moitié vers zéro (ou arrondir la moitié à l'infini) par opposition à la méthode plus courante de l'arrondi à l'infini (la méthode de l'arrondi à l'infini est une convention courante, mais n'est rien d'autre qu'une convention).

  • Si la fraction de y est exactement 0,5, alors q = y - 0,5 si y est positif, et q = y + 0,5 si y est négatif.

q = sgn ( y ) | y | - 0,5 = - sgn ( y ) - | y | + 0,5 {\displaystyle q=\operatorname {sgn}(y)\lceil \left|y\right|-0,5\right\rceil =-\operatorname {sgn}(y)\left\lfloor -\left|y\right|+0,5\right\rfloor \,}{\displaystyle q=\operatorname {sgn}(y)\left\lceil \left|y\right|-0.5\right\rceil =-\operatorname {sgn}(y)\left\lfloor -\left|y\right|+0.5\right\rfloor \,}

Par exemple, 23,5 est arrondi à 23, et -23,5 est arrondi à -23.

Cette méthode traite également les valeurs positives et négatives de manière symétrique, et est donc exempte de biais global si les chiffres originaux sont positifs ou négatifs avec une probabilité égale. Cependant, cette règle introduira toujours un biais négatif pour les nombres positifs, et un biais positif pour les négatifs.

Ronde de moitié à paire

Une règle de bris d'égalité encore moins biaisée est ronde à moitié, à savoir

  • Si la fraction de y est 0,5, alors q est l'entier pair le plus proche de y.

Ainsi, par exemple, +23,5 devient +24, +22,5 devient +22, -22,5 devient -22 et -23,5 devient -24.

Cette méthode traite également les valeurs positives et négatives de manière symétrique, et est donc exempte de biais global si les chiffres originaux sont positifs ou négatifs avec une probabilité égale. En outre, pour la plupart des distributions raisonnables de valeurs y, la valeur attendue (moyenne) des nombres arrondis est essentiellement la même que celle des nombres originaux, même si ces derniers sont tous positifs (ou tous négatifs). Toutefois, cette règle introduira toujours un biais positif pour les nombres pairs (y compris zéro), et un biais négatif pour les nombres impairs.

Cette variante de la méthode de l'arrondi au plus proche est également appelée arrondi non biaisé (de manière ambiguë et un peu abusive), arrondi convergent, arrondi du statisticien, arrondi néerlandais, arrondi gaussien ou arrondi des banquiers. Cette méthode est largement utilisée en comptabilité.

C'est le mode d'arrondi par défaut utilisé dans les fonctions et les opérateurs informatiques de l'IEEE 754.

Ronde moitié à impair

Une autre règle de bris d'égalité très similaire à celle de l'arrondi à la moitié ou à la pair, à savoir

  • Si la fraction de y est 0,5, alors q est l'entier impair le plus proche de y.

Ainsi, par exemple, +22,5 devient +23, +21,5 devient +21, -21,5 devient -21 et -22,5 devient -23.

Cette méthode traite également les valeurs positives et négatives de manière symétrique, et est donc exempte de biais global si les chiffres originaux sont positifs ou négatifs avec une probabilité égale. En outre, pour la plupart des distributions raisonnables de valeurs y, la valeur attendue (moyenne) des nombres arrondis est essentiellement la même que celle des nombres originaux, même si ces derniers sont tous positifs (ou tous négatifs). Toutefois, cette règle introduira toujours un biais négatif pour les nombres pairs (y compris zéro), et un biais positif pour les nombres impairs.

Cette variante n'est presque jamais utilisée dans la plupart des calculs, sauf dans les situations où l'on veut éviter d'arrondir 0,5 ou -0,5 à zéro, ou éviter d'augmenter l'échelle des nombres représentés en virgule flottante (avec des plages limitées pour l'exposant d'échelle), de sorte qu'un nombre non infini s'arrondisse à l'infini, ou qu'une petite valeur dénormée s'arrondisse à une valeur normale non nulle (ces situations peuvent se produire avec le mode d'arrondissement moitié-moitié). En fait, ce mode préfère préserver l'échelle existante des nombres ex aequo, en évitant les résultats hors limites lorsque cela est possible.

Arrondissement stochastique

L'arrondissement stochastique est une autre méthode impartiale de départage :

  • Si la partie fractionnaire de y est de 0,5, choisissez q au hasard parmi y + 0,5 et y - 0,5, avec une probabilité égale.

Comme la règle du round-half-to-even, cette règle est essentiellement dépourvue de tout préjugé général ; mais elle est également juste parmi les valeurs de q paires et impaires. D'autre part, elle introduit une composante aléatoire dans le résultat ; effectuer deux fois le même calcul sur les mêmes données peut donner deux résultats différents. En outre, il est susceptible d'être biaisé inconsciemment si des êtres humains (plutôt que des ordinateurs ou des dispositifs de hasard) décident "au hasard" dans quelle direction arrondir.

Alternance de bris d'égalité

Une méthode, plus obscure que la plupart, consiste à arrondir à moitié en alternance.

  • Si la partie fractionnaire est de 0,5, arrondir alternativement au chiffre supérieur et au chiffre inférieur : pour la première occurrence d'une partie fractionnaire de 0,5, arrondir au chiffre supérieur ; pour la deuxième occurrence, arrondir au chiffre inférieur ; et ainsi de suite.

Cela supprime la composante aléatoire du résultat, si les occurrences de 0,5 partie fractionnaire peuvent être effectivement numérotées. Mais elle peut encore introduire un biais positif ou négatif selon le sens de l'arrondi attribué à la première occurrence, si le nombre total d'occurrences est impair.

Une simple hésitation

Dans certains contextes, toutes les méthodes d'arrondi ci-dessus peuvent être insatisfaisantes. Par exemple, supposons que y soit une mesure précise d'un signal audio, qui est arrondi à un nombre entier q afin de réduire les coûts de stockage ou de transmission. Si y change lentement avec le temps, l'une des méthodes d'arrondi ci-dessus aura pour résultat que q sera complètement constant pendant de longs intervalles, séparés par des sauts soudains de ±1. Lorsque le signal q est lu, ces étapes seront entendues comme un bruit très désagréable, et toute variation du signal original entre deux valeurs entières sera complètement perdue.

Une façon d'éviter ce problème est d'arrondir chaque valeur y vers le haut avec une probabilité égale à sa fraction, et de l'arrondir vers le bas avec le complément de cette probabilité. Par exemple, le nombre 23,17 serait arrondi à 24 avec une probabilité de 0,17, et à 23 avec une probabilité de 1 - 0,17 = 0,83. (Cela équivaut à arrondir y + s vers le bas,s est un nombre aléatoire uniformément réparti entre 0 et 1). Grâce à cet arrondi spécial, connu sous le nom d'hésitation, les pas soudains sont remplacés par un bruit moins gênant, et même les petites variations du signal original seront préservées dans une certaine mesure. Comme l'approche stochastique de la rupture d'égalité, l'hésitation n'a pas de biais : si toutes les valeurs des fractions sont également probables, l'arrondissement vers le haut d'un certain montant est aussi probable que l'arrondissement vers le bas de ce même montant ; et il en va de même pour la somme de plusieurs nombres arrondis. D'autre part, l'hésitation introduit une composante aléatoire dans le résultat, beaucoup plus importante que celle du bris d'égalité stochastique.

Plus précisément, l'erreur d'arrondi pour chaque chiffre tremblant sera une variable aléatoire uniformément distribuée avec une valeur moyenne de zéro, mais avec un écart-type de 1 / 12 ≈ 0.2886 {\displaystyle 1/{\sqrt {12}}\approx 0.2886}{\displaystyle 1/{\sqrt {12}}\approx 0.2886} qui est meilleur que l'écart type 1/2 avec les méthodes prédictives simples, mais légèrement plus élevé qu'avec la méthode stochastique plus simple. Cependant, la somme de n nombres arrondis sera une variable aléatoire avec une erreur attendue de zéro, mais avec un écart-type n / 12 {\displaystyle {\sqrt {n}}/{\sqrt {12}}}{\displaystyle {\sqrt {n}}/{\sqrt {12}}} (le bruit total restant) qui diverge de manière semi-quadratique et peut devenir facilement perceptible, même si l'écart-type de l'erreur d'arrondi par échantillon sera de 1 / 12 n {\displaystyle 1/{\sqrt {12n}}}{\displaystyle 1/{\sqrt {12n}}} qui converge lentement de manière semi-quadratique vers zéro. Ainsi, cette distribution aléatoire peut encore être trop élevée pour certaines applications qui arrondissent beaucoup de données.

Des tergiversations multidimensionnelles

Cette variante de la méthode de l'hésitation simple arrondit encore les valeurs avec une probabilité égale à sa fraction. Toutefois, au lieu d'utiliser une distribution aléatoire pour arrondir des échantillons isolés, l'erreur d'arrondi se produisant à chaque échantillon arrondi est totalisée pour les éléments environnants suivants à échantillonner ou à calculer ; cette valeur accumulée est ensuite ajoutée à la valeur de ces valeurs échantillonnées ou calculées suivantes à arrondir, de sorte que les valeurs modifiées prendront en compte cette différence en utilisant un modèle prédictif (comme la méthode dithering de Floyd-Steinberg).

Les valeurs modifiées sont ensuite arrondies selon l'une des méthodes d'arrondi ci-dessus, les meilleures étant les méthodes stochastiques ou de tergiversation : dans ce dernier cas, la somme des n nombres arrondis sera toujours une variable aléatoire avec une erreur attendue nulle mais avec un excellent écart-type constant de 1 / 12 {\displaystyle 1/{\sqrt {12}}}{\displaystyle 1/{\sqrt {12}}} au lieu de diverger de manière semi-quadratique lors de l'analyse d'échantillons isolés ; et l'écart moyen global d'erreur d'arrondi par échantillon arrondi sera de 1 / ( n 12 ){\displaystyle 1/(n{\sqrt {12}})} qui convergera de manière hyperbolique vers zéro, plus rapidement qu'avec la convergence semi-hyperbolique lors de l'analyse d'échantillons isolés.

En pratique, lors de l'arrondi de grands ensembles de données échantillonnées (comme le rendu audio, image et vidéo), l'accumulation d'erreurs d'arrondi est le plus souvent utilisée avec un simple arrondi prédictif des valeurs modifiées (comme l'arrondi vers zéro), parce qu'elle préservera toujours la convergence hyperbolique vers zéro du biais d'erreur d'arrondi moyen global et de son écart-type. Cette amélioration est fréquemment utilisée dans le traitement des images et du son (notamment pour des opérations précises de redimensionnement et d'anticrénelage, où le simple tergiversation probabiliste de valeurs isolées peut encore produire un bruit perceptible, parfois pire que les effets de moiré se produisant avec des méthodes simples d'arrondi non probabilistes appliquées à des échantillons isolés).

La propagation effective des erreurs d'arrondi accumulées peut dépendre de la dimension discrète des données échantillonnées à arrondir : lors de l'échantillonnage d'images bidimensionnelles, y compris les images colorées (qui ajoutent la dimension discrète des plans de couleur), ou de vidéos tridimensionnelles (qui ajoutent une dimension temporelle discrète), ou de données audio polyphoniques (utilisant les dimensions discrètes du temps et du canal), il peut encore être préférable de propager cette erreur dans une direction préférée, ou également dans plusieurs dimensions orthogonales, comme la verticale par rapport à la verticale par rapport à la verticale par rapport à la verticale. horizontalement pour les images bidimensionnelles, ou dans des canaux de couleur parallèles à la même position et/ou horodatage, et en fonction d'autres propriétés de ces dimensions discrètes orthogonales (selon un modèle de perception). Dans ces cas, plusieurs accumulateurs d'erreurs d'arrondi peuvent être utilisés (au moins un pour chaque dimension discrète), ou un vecteur (ou une matrice) d'accumulateurs à (n-1) dimensions.

Dans certains de ces cas, les dimensions discrètes des données à échantillonner et à arrondir peuvent être traitées de manière non orthogonale : par exemple, lors du travail avec des images en couleur, les données des plans de couleur trichromatiques dans chaque dimension physique (hauteur, largeur et éventuellement temps) pourraient être remappées en utilisant un modèle de couleur perceptif, de sorte que les accumulateurs d'erreurs d'arrondi seront conçus pour préserver la luminosité avec une probabilité plus élevée que la teinte ou la saturation, au lieu de propager les erreurs dans chaque plan de couleur orthogonal indépendamment ; et dans les données audio stéréophoniques, les deux canaux de données arrondis (gauche et droite) peuvent être arrondis ensemble pour préserver leur valeur moyenne en priorité par rapport à leur différence effective qui absorbera la plupart des erreurs d'arrondi restantes, de manière équilibrée autour de zéro.

Arrondissement aux fractions simples

Dans certains contextes, il est souhaitable d'arrondir un nombre x donné à une fraction "nette", c'est-à-dire la fraction la plus proche z = m/n dont le numérateur m et le dénominateur n ne dépassent pas un maximum donné. Ce problème est assez différent de celui de l'arrondissement d'une valeur à un nombre fixe de chiffres décimaux ou binaires, ou à un multiple d'une unité donnée m. Ce problème est lié aux séquences de Farey, à l'arbre de Stern-Brocot et aux fractions continues.

Arrondissement échelonné

Ce type d'arrondi, également appelé arrondi à une échelle logarithmique, est une variante de l'arrondi à un incrément spécifié, mais avec un incrément qui est modifié en fonction de l'échelle et de l'ampleur du résultat. Concrètement, l'intention est de limiter le nombre de chiffres significatifs, en arrondissant la valeur de manière à ce que les chiffres non significatifs soient abandonnés. Ce type d'arrondi se produit implicitement avec les nombres calculés avec des valeurs à virgule flottante de précision limitée (comme les types flottant et double de la norme IEEE-754), mais il peut être utilisé plus généralement pour arrondir toute valeur réelle avec tout nombre positif de chiffres significatifs et toute base réelle strictement positive.

Par exemple, il peut être utilisé dans les graphiques d'ingénierie pour représenter des données à l'aide d'une échelle logarithmique à pas variables (par exemple, les longueurs d'onde, dont la base n'est pas nécessairement une mesure entière), ou dans les données statistiques pour définir des classes de valeurs réelles dans des intervalles de largeurs à croissance exponentielle (mais l'utilisation la plus courante est avec des bases entières telles que 10 ou 2). [source ? ]

Ce type d'arrondi est basé sur une échelle logarithmique définie par un facteur d'échelle réel fixe non nul s (dans les cas les plus fréquents, ce facteur est s=1) et une base positive fixe b>1 (pas nécessairement un nombre entier et le plus souvent différent du facteur d'échelle), et un nombre entier fixe n>0 de chiffres significatifs dans cette base (qui déterminera la valeur de l'incrément à utiliser pour l'arrondi, ainsi que l'échelle effective calculée du nombre arrondi).

Le nombre d'arguments primaires (ainsi que le nombre arrondi qui en résulte) est d'abord représenté en notation exponentielle x = s-a-m-bc, de sorte que le signe s est soit +1 soit -1, la mantisse absolue a est limitée à l'intervalle positif semi-ouvert [1/b,1], et l'exposant c est un nombre entier (positif ou négatif) quelconque. Dans cette représentation, tous les chiffres significatifs se trouvent dans la partie fractionnaire de la mantisse absolue dont la partie entière est toujours égale à zéro.

Si le nombre source (ou nombre arrondi) est 0, la mantisse absolue a est définie comme 0, l'exposant c est fixé à une valeur arbitraire (0 dans la plupart des conventions, mais certaines représentations en virgule flottante ne peuvent pas utiliser une mantisse absolue nulle mais réservent une valeur négative maximale spécifique à l'exposant c pour représenter le nombre 0 lui-même), et le signe s peut être choisi arbitrairement entre -1 ou +1 (il est généralement fixé à +1 pour le zéro simple, ou il est fixé au même signe que l'argument dans la valeur arrondie si la représentation des nombres permet de différencier les zéros positifs et négatifs, même s'ils représentent finalement la même valeur numérique 0).

Une représentation exponentielle échelonnée comme x = a-s-bc peut également être utilisée de manière équivalente, avec une mantisse signée a soit égale à zéro soit dans l'un des deux intervalles semi-ouverts (-1,-1/b] et [+1/b,+1), et ce sera le cas dans l'algorithme ci-dessous.

Les étapes pour calculer cet arrondi échelonné sont généralement similaires à celles qui suivent :

  1. si x est égal à zéro, il suffit de renvoyer x ; sinon :
  2. convertir x en représentation exponentielle à l'échelle, avec une mantisse signée :
    x = a
    s b c {\displaystyle x=a\cdot s\cdot b^{c}\,}{\displaystyle x=a\cdot s\cdot b^{c}\,}
    1. Soit "x" la valeur non échelonnée de x, en la divisant par le facteur d'échelle s :
      x ′ = x / s {\displaystyle x'=x/s\,}
      {\displaystyle x'=x/s\,} ;
    2. que l'exposant d'échelle c soit égal à un plus le logarithme en base B de la valeur absolue de x', arrondi à un nombre entier inférieur (vers moins l'infini) :
      c = 1 +
      log b | x ′ | = 1 + log b | x / s | {\displaystyle c=1+\left\lfloor \log _{b}\left|x'\right|\right\rfloor =1+\left\lfloor \log _{b}\left|x/s\right|\right\rfloor \,}{\displaystyle c=1+\left\lfloor \log _{b}\left|x'\right|\right\rfloor =1+\left\lfloor \log _{b}\left|x/s\right|\right\rfloor \,} ;
    3. que la mantisse signée a soit le produit de x' divisé par b à la puissance c :
      a = x ′
      b - c = x / s b - c {\displaystyle a=x'\cdot b^{-c}=x/s\cdot b^{-c}\,}{\displaystyle a=x'\cdot b^{-c}=x/s\cdot b^{-c}\,}
  3. calculer la valeur arrondie dans cette représentation :
    1. que c' soit l'exposant d'échelle initial c de x' :
      c ′ = c {\displaystyle c'=c\,}
      {\displaystyle c'=c\,}
    2. Soit m l'incrément pour arrondir la mantisse a en fonction du nombre de chiffres significatifs à conserver :
      m = b - n [style d'affichage] m=b^{-n}\,}
      {\displaystyle m=b^{-n}\,}
    3. Soit a' la mantisse signée a arrondie selon cet incrément m et le mode d'arrondi choisi :
      a ′ = r o u n d ( a , m ) = r o u n d ( x / s ⋅ b n - c ′ )
      b - n {\displaystyle a'=\mathrm {round} (a,m)=\mathrm {round} (x/s\cdot b^{n-c'})\cdot b^{-n}\,}{\displaystyle a'=\mathrm {round} (a,m)=\mathrm {round} (x/s\cdot b^{n-c'})\cdot b^{-n}\,}
    4. si la valeur absolue de a' n'est pas inférieure à b, alors on décrémente n (on multiplie l'incrément m par b), on incrémente l'exposant d'échelle c', on divise la mantisse signée a par b, et on recommence l'arrondi de la nouvelle mantisse signée a en a' avec la même formule ; cette étape ne peut être évitée que si la fonction "round()" de l'abtrait est toujours en train d'arrondir a vers 0 (i. e. lorsqu'il s'agit d'une simple troncature), mais elle est nécessaire si elle peut arrondir a vers l'infini, car la mantisse arrondie peut avoir un exposant d'échelle plus élevé dans ce cas, ce qui laisse un chiffre de précision supplémentaire.
  4. retourner la valeur arrondie :
    y = s c a l e d r o u n d ( x , s , b , n ) = a
    ⋅ s ⋅ b c ′ = r o u n d ( x / s b n - c ′ ) s b c ′ - n {\displaystyle y=\mathrm {scaledround} (x,s,b,n)=a'\cdot s\cdot b^{c'}=\mathrm {round} (x/s\cdot b^{n-c'})\cdot s\cdot b^{c'-n}\,}{\displaystyle y=\mathrm {scaledround} (x,s,b,n)=a'\cdot s\cdot b^{c'}=\mathrm {round} (x/s\cdot b^{n-c'})\cdot s\cdot b^{c'-n}\,} .

Pour la fonction abstraite "round()", ce type d'arrondi peut utiliser n'importe lequel des modes d'arrondi aux entiers décrits plus complètement dans la section suivante, mais il s'agit le plus souvent du mode d'arrondi au plus proche (avec des règles de bris d'égalité également décrites plus complètement ci-dessous).

Par exemple :

  • l'arrondissement de 1,234 avec le facteur d'échelle 1 en base 10 et 3 chiffres significatifs (précision relative maximale = 1/1000), lors de l'utilisation de tout arrondi au mode le plus proche, donnera 1,23 ;
  • Un arrondi à une échelle similaire de 1,236 donnera 1,24 ;
  • Un arrondi à une échelle similaire de 21,236 donnera 21,2 ;
  • Un arrondi à une échelle similaire de 321,236 donnera 321 ;
  • l'arrondissement de 1,234 facteur d'échelle 1 en base 10 et 3 chiffres significatifs (précision relative maximale=1/1000), en utilisant le mode d'arrondissement vers le bas, donnera 1,23 ;
  • Un arrondi à l'échelle similaire de 1,236 donnera également 1,23 ;
  • l'arrondissement gradué de 3 π / 7 ≈ 6.8571 π 2 - 4 {\displaystyle \scriptstyle 3\pi /7\;\approx \;6.8571\cdot \pi \cdot 2^{-4}}{\displaystyle \scriptstyle 3\pi /7\;\approx \;6.8571\cdot \pi \cdot 2^{-4}} avec le facteur d'échelle π {\displaystyle \scriptstyle \pi }{\displaystyle \scriptstyle \pi } en base 2 et 3 chiffres significatifs (précision relative maximale=1/8), en utilisant le mode d'arrondi vers le bas, donnera 6 π 2 - 4 = 3 π / 8 {\displaystyle \scriptstyle 6\cdot \pi \cdot 2^{-4}\;=\;3\pi /8}{\displaystyle \scriptstyle 6\cdot \pi \cdot 2^{-4}\;=\;3\pi /8} ;
  • un arrondi à l'échelle similaire de 5 π / 7 ≈ 5.7143 π 2 - 3 {\displaystyle \scriptstyle 5\pi /7\;\approx \;5.7143\cdot \pi \cdot 2^{-3}}}{\displaystyle \scriptstyle 5\pi /7\;\approx \;5.7143\cdot \pi \cdot 2^{-3}} donnera 5 π 2 - 3 = 5 π / 8 {\displaystyle \scriptstyle 5\cdot \pi \cdot 2^{-3}\;=\;5\pi /8}{\displaystyle \scriptstyle 5\cdot \pi \cdot 2^{-3}\;=\;5\pi /8} ;
  • un arrondi à l'échelle similaire de π / 7 ≈ 4.5714 π 2 - 5 {\displaystyle \scriptstyle \pi /7\;\approx \;4.5714\cdot \pi \cdot 2^{-5}}}{\displaystyle \scriptstyle \pi /7\;\approx \;4.5714\cdot \pi \cdot 2^{-5}} donnera 4 π 2 - 5 = π / 8 {\displaystyle \scriptstyle 4\cdot \pi \cdot 2^{-5}\;=\;\pi /8}{\displaystyle \scriptstyle 4\cdot \pi \cdot 2^{-5}\;=\;\pi /8} .
  • un arrondi à l'échelle similaire de π / 8 = 4 π 2 - 5 {\displaystyle \scriptstyle \pi /8\;=\;4\cdot \pi \cdot 2^{-5}} donnera{\displaystyle \scriptstyle \pi /8\;=\;4\cdot \pi \cdot 2^{-5}} également 4 π 2 - 5 = π / 8 {\displaystyle \scriptstyle 4\cdot \pi \cdot 2^{-5}\;=\;\pi /8}{\displaystyle \scriptstyle 4\cdot \pi \cdot 2^{-5}\;=\;\pi /8} .
  • un arrondi à l'échelle similaire de π / 15 ≈ 4.2667 π 2 - 6 {\displaystyle \scriptstyle \pi /15\;\approx \;4.2667\cdot \pi \cdot 2^{-6}}}{\displaystyle \scriptstyle \pi /15\;\approx \;4.2667\cdot \pi \cdot 2^{-6}} donnera 4 π 2 - 6 = π / 16 {\displaystyle \scriptstyle 4\cdot \pi \cdot 2^{-6}\;=\;\pi /16}{\displaystyle \scriptstyle 4\cdot \pi \cdot 2^{-6}\;=\;\pi /16} .

Arrondir à la valeur disponible

Le bois fini, le papier à écrire, les condensateurs et de nombreux autres produits ne sont généralement vendus qu'en quelques formats standard.

De nombreuses procédures de conception décrivent comment calculer une valeur approximative, puis "arrondir" à une certaine taille standard en utilisant des expressions telles que "arrondir à la valeur standard la plus proche", "arrondir à la valeur standard la plus proche" ou "arrondir à la valeur standard la plus proche".

Lorsqu'un ensemble de valeurs préférées est également espacé sur une échelle logarithmique, le choix de la valeur préférée la plus proche d'une valeur donnée peut être considéré comme une sorte d'arrondi à l'échelle. Ces valeurs "arrondies" peuvent être calculées directement.

Arrondissement à virgule flottante

En arithmétique à virgule flottante, l'arrondissement vise à transformer une valeur x donnée en une valeur z avec un nombre déterminé de chiffres significatifs. En d'autres termes, z doit être un multiple d'un nombre m qui dépend de la magnitude de z. Le nombre m est une puissance de la base (généralement 2 ou 10) de la forme à virgule flottante.

En dehors de ce détail, toutes les variantes d'arrondi discutées ci-dessus s'appliquent également à l'arrondi des nombres à virgule flottante. L'algorithme pour un tel arrondi est présenté dans la section Arrondi échelonné ci-dessus, mais avec un facteur d'échelle constant s=1, et une base entière b>1.

Pour les résultats où le résultat arrondi dépasserait le résultat d'un arrondi dirigé, le résultat est soit l'infini signé approprié, soit le nombre fini positif représentable le plus élevé (ou le nombre fini négatif représentable le plus bas si x est négatif), selon le sens de l'arrondi. Le résultat d'un débordement pour le cas habituel d'arrondi au pair est toujours l'infini approprié.

En outre, si le résultat arrondi est inférieur à la valeur de référence, c'est-à-dire si l'exposant dépasse la plus petite valeur entière représentable, le résultat effectif peut être soit zéro (éventuellement signé si la représentation peut maintenir une distinction de signes pour les zéros), soit le plus petit nombre fini positif représentable (ou le plus grand nombre fini négatif représentable si x est négatif), éventuellement un nombre positif ou négatif dénormal (si la mantisse stocke tous ses chiffres significatifs, auquel cas le chiffre le plus significatif peut encore être stocké dans une position inférieure en mettant à zéro les chiffres les plus élevés stockés, et cette mantisse stockée ne fait pas tomber le chiffre le plus significatif, ce qui est possible lorsque la base b=2 car le chiffre le plus significatif est toujours 1 dans cette base), selon le sens de l'arrondi. Le résultat d'un sous-débit pour le cas habituel d'arrondi à pair est toujours le zéro approprié.

Double arrondi

Arrondir un nombre deux fois de suite à des précisions différentes, cette dernière étant plus grossière, n'est pas garanti de donner le même résultat qu'arrondir une fois à la précision finale, sauf dans le cas d'un arrondissement dirigé. Par exemple, arrondir 9,46 à une décimale donne 9,5, puis 10 lorsque l'on arrondit à un nombre entier en utilisant l'arrondi à la moitié au pair, mais donnerait 9 lorsque l'on arrondit directement à un nombre entier.

Certains langages informatiques et la norme IEEE 754-2008 imposent que, dans les calculs simples, le résultat ne soit pas arrondi deux fois. Cela a été un problème particulier avec Java, car il est conçu pour être exécuté de manière identique sur différentes machines, des astuces de programmation spéciales ont dû être utilisées pour y parvenir avec x87 en virgule flottante. Le langage Java a été modifié afin de permettre des résultats différents lorsque la différence n'a pas d'importance et d'exiger l'utilisation d'un qualificatif "strictfp" lorsque les résultats doivent être conformes avec précision.

Calcul exact avec arithmétique arrondie

Il est possible d'utiliser l'arithmétique arrondie pour évaluer la valeur exacte d'une fonction avec un domaine et une plage discrets. Par exemple, si nous savons qu'un entier n est un carré parfait, nous pouvons calculer sa racine carrée en convertissant n en une valeur x en virgule flottante, en calculant la racine carrée approximative y de x en virgule flottante, puis en arrondissant y à l'entier le plus proche q. Si n n n'est pas trop grand, l'erreur d'arrondissement en virgule flottante de y sera inférieure à 0,5, de sorte que la valeur arrondie q sera la racine carrée exacte de n. Dans la plupart des ordinateurs modernes, cette méthode peut être beaucoup plus rapide que le calcul de la racine carrée de n par un algorithme tout entier.

Le dilemme du fabricant de table

William Kahan a inventé le terme "The Table-Maker's Dilemma" pour désigner le coût inconnu de l'arrondissement des fonctions transcendantes :

"Personne ne sait combien cela coûterait de calculer y^w correctement arrondi pour chaque deux arguments à virgule flottante où il n'y a pas de débordement. Au lieu de cela, des bibliothèques de mathématiques réputées calculent des fonctions transcendantes élémentaires principalement à un peu plus de la moitié d'un ulp et presque toujours bien à l'intérieur d'un ulp. Pourquoi Y^W ne peut-il pas être arrondi à l'intérieur d'un demi ulp comme SQRT ? Parce que personne ne sait combien de calcul cela coûterait... Il n'existe pas de moyen général de prédire combien de chiffres supplémentaires devront être portés pour calculer une expression transcendantale et l'arrondir correctement à un nombre de chiffres préétabli. Même le fait (s'il est vrai) qu'un nombre fini de chiffres supplémentaires suffira en fin de compte peut être un théorème profond".

La norme IEEE en matière de virgule flottante garantit que l'addition, la soustraction, la multiplication, la division, la racine carrée et le reste en virgule flottante donneront le résultat correctement arrondi de l'opération de précision infinie. Cependant, aucune garantie de ce type n'est donnée pour les fonctions plus complexes et elles ne sont généralement précises qu'au mieux.

En utilisant le théorème de Gelfond-Schneider et le théorème de Lindemann-Weierstrass, on peut prouver que de nombreuses fonctions élémentaires standard donnent des résultats transcendantaux lorsqu'elles sont dotées d'arguments rationnels non nuls ; il est donc toujours possible d'arrondir correctement ces fonctions. Cependant, la détermination d'une limite pour une précision donnée sur la façon dont les résultats doivent être calculés avant qu'un résultat correctement arrondi puisse être garanti peut demander beaucoup de temps de calcul.

Il existe aujourd'hui des progiciels qui offrent une précision totale. Le paquet MPFR donne des résultats de précision arbitraire correctement arrondis. IBM a écrit un progiciel pour les fonctions élémentaires rapides et précises de l'IEEE et, à l'avenir, les bibliothèques standard pourraient offrir une telle précision.

Il est possible de concevoir des nombres calculables bien définis qu'il ne sera peut-être jamais possible d'arrondir correctement, quel que soit le nombre de chiffres calculés. Par exemple, si la conjecture de Goldbach est vraie mais impossible à prouver, il est alors impossible d'arrondir correctement 0,5 + 10-n où n est le premier nombre pair supérieur à 4 qui n'est pas la somme de deux nombres premiers, ou 0,5 s'il n'existe pas de tel nombre. On peut cependant se rapprocher de n'importe quelle précision donnée, même si la conjecture est impossible à prouver.

Histoire

Le concept d'arrondissement est très ancien, peut-être même plus ancien que le concept de division. Certaines anciennes tablettes d'argile trouvées en Mésopotamie contiennent des tableaux avec des valeurs arrondies des réciproques et des racines carrées en base 60. Les approximations arrondies de π, la longueur de l'année et la longueur du mois sont également anciennes.

La méthode du round-to-even sert de norme ASTM (E-29) depuis 1940. L'origine des termes "arrondissement sans biais" et "arrondissement par le statisticien" s'explique assez facilement. Dans la 4e édition de Probabilité et théorie des erreurs de 1906, Robert Simpson Woodward a appelé cela "la règle de l'ordinateur", indiquant qu'elle était alors couramment utilisée par les ordinateurs humains qui calculaient des tableaux mathématiques. L'article de Churchill Eisenhart de 1947 intitulé "Effects of Rounding or Grouping Data" (dans Selected Techniques of Statistical Analysis, McGrawHill, 1947, Eisenhart, Hastay et Wallis, éditeurs) indiquait que cette pratique était déjà "bien établie" dans l'analyse des données.

L'origine du terme "arrondi bancaire" reste plus obscure. Si cette méthode d'arrondi a jamais été une norme dans le secteur bancaire, les preuves se sont avérées extrêmement difficiles à trouver. Au contraire, la section 2 du rapport de la Commission européenne intitulé "L'introduction de l'euro et l'arrondi des montants en devises" suggère qu'il n'y avait auparavant aucune méthode standard d'arrondi dans le secteur bancaire ; et elle précise que les montants "à mi-chemin" doivent être arrondis.

Jusque dans les années 1980, la méthode d'arrondi utilisée dans l'arithmétique des ordinateurs à virgule flottante était généralement fixée par le matériel, mal documentée, incohérente et différente pour chaque marque et modèle d'ordinateur. Cette situation a changé après que la norme IEEE 754 en virgule flottante a été adoptée par la plupart des fabricants d'ordinateurs. La norme permet à l'utilisateur de choisir parmi plusieurs modes d'arrondi et, dans chaque cas, spécifie précisément comment les résultats doivent être arrondis. Ces caractéristiques ont rendu les calculs numériques plus prévisibles et plus indépendants de la machine, et ont rendu possible la mise en œuvre efficace et cohérente de l'arithmétique des intervalles.

Fonctions d'arrondi dans les langages de programmation

La plupart des langages de programmation fournissent des fonctions ou une syntaxe spéciale pour arrondir les nombres fractionnaires de diverses manières. Les premiers langages numériques, tels que FORTRAN et C, n'offrent qu'une seule méthode, généralement la troncature (vers zéro). Cette méthode par défaut pourrait être implicite dans certains contextes, par exemple lors de l'affectation d'un nombre fractionnaire à une variable entière, ou lors de l'utilisation d'un nombre fractionnaire comme index d'un tableau. D'autres types d'arrondi devaient être programmés explicitement ; par exemple, l'arrondissement d'un nombre positif à l'entier le plus proche pouvait être mis en œuvre en ajoutant 0,5 et en tronquant.

Cependant, au cours des dernières décennies, la syntaxe et/ou les bibliothèques standard de la plupart des langues ont généralement fourni au moins les quatre fonctions d'arrondi de base (haut/plafond, bas/plancher, au plus proche et vers zéro). La méthode de bris d'égalité peut varier selon la langue et la version, et/ou peut être choisie par le programmeur. Plusieurs langues suivent l'exemple de la norme IEEE-754 en matière de virgule flottante, et définissent ces fonctions comme prenant un argument flottant de double précision et renvoyant le résultat du même type, qui peut ensuite être converti en un nombre entier si nécessaire. Comme le format double précision de l'IEEE comporte 52 fractions de bits, cette approche peut éviter les débordements intempestifs dans les langues comportant des entiers de 32 bits. Certains langages, tels que PHP, fournissent des fonctions qui arrondissent une valeur à un nombre spécifié de chiffres décimaux, par exemple de 4321.5678 à 4321.57 ou 4300. En outre, de nombreuses langues fournissent une fonction de formatage de chaîne "printf" ou similaire, qui permet de convertir un nombre fractionnaire en une chaîne, arrondie à un nombre de décimales spécifié par l'utilisateur (la précision). D'autre part, la troncature (arrondi à zéro) est toujours la méthode d'arrondi par défaut utilisée par de nombreuses langues, notamment pour la division de deux valeurs entières.

Au contraire, le CSS et le SVG ne définissent aucune précision maximale spécifique pour les nombres et les mesures, qui sont traités et exposés dans leur Document Object Model et dans leur interface Interface-description-langage comme des chaînes de caractères comme s'ils avaient une précision infinie, et ne font pas de distinction entre les nombres entiers et les valeurs en virgule flottante ; cependant, les implémentations de ces langages convertissent généralement ces nombres en double virgule flottante IEEE-754 avant d'exposer les chiffres calculés avec une précision limitée (notamment dans le cadre des liaisons d'interface standard Javascript ou ECMAScript).

Autres normes d'arrondi

Certaines disciplines ou institutions ont émis des normes ou des directives pour l'arrondissement.

Observations météorologiques des États-Unis

Dans une directive publiée à la mi-1966, le bureau américain du coordinateur fédéral de la météorologie a déterminé que les données météorologiques devaient être arrondies au chiffre rond le plus proche, avec la règle de bris d'égalité "arrondir à moitié". Par exemple, 1,5 arrondi à un nombre entier doit devenir 2, et -1,5 doit devenir -1. Avant cette date, la règle de bris d'égalité était "arrondir à la moitié de zéro".

Zéro négatif en météorologie

Certains météorologues peuvent écrire "-0" pour indiquer une température entre 0,0 et -0,5 degrés (exclusif) qui a été arrondie à un nombre entier. Cette notation est utilisée lorsque le signe négatif est considéré comme important, quelle que soit la magnitude ; par exemple, lorsque l'on arrondit les températures sur l'échelle des Celsius, où moins de zéro indique le gel. []

Pages connexes

  • Précision arithmétique

Questions et réponses

Q : Que signifie le mot "arrondi" ?


R : Arrondir consiste à remplacer une valeur numérique par une autre valeur approximativement égale mais dont la forme est plus courte, plus simple ou plus explicite.

Q : Quel est un exemple d'arrondi ?


R : Un exemple d'arrondi serait que US$23.74 soit arrondi à US$24, que la fraction 312/937 soit arrondie à 1/3, et que l'expression 2 {\displaystyle {\sqrt {2}} soit arrondie à 1,41.

Q : Pourquoi arrondissons-nous les nombres ?


R : Nous arrondissons les nombres afin d'obtenir une valeur plus facile à écrire et à manipuler que l'original. Cela peut également être fait pour indiquer la précision d'un nombre calculé.

Q : Quels sont les problèmes potentiels liés à l'arrondi ?


R : L'arrondi peut introduire une certaine erreur d'arrondi et, dans certains cas, il peut rendre le résultat sans signification en raison des erreurs qui s'accumulent au fil du temps dans les calculs. En outre, l'arrondi précis des fonctions mathématiques transcendantales peut être difficile car il n'est pas possible de savoir au préalable combien de chiffres supplémentaires doivent être calculés pour déterminer s'il faut arrondir vers le haut ou vers le bas.

Q : Quel est le rapport entre l'arrondi et la quantification ?


R : L'arrondi présente de nombreuses similitudes avec la quantification qui se produit lorsque des quantités physiques doivent être codées par des nombres ou des signaux numériques.

AlegsaOnline.com - 2020 / 2023 - License CC3