Réponses
Trop de publicités?Math.Floor
arrondit, Math.Ceiling
tours, et Math.Truncate
tours vers zéro. Ainsi, Math.Truncate
, c'est comme Math.Floor
pour les nombres positifs, et comme Math.Ceiling
pour les nombres négatifs. Voici la référence.
Pour être complet, Math.Round
arrondi à l'entier le plus proche. Si le nombre est exactement à mi-chemin entre deux entiers, alors il arrondit vers le même. De référence.
Voir aussi: Pax de Diablo réponse. Hautement recommandé!
Suivez ces liens pour la MSDN descriptions de:
-
Math.Floor
, ce qui arrondit vers l'infini négatif. -
Math.Ceiling
, ce qui arrondit vers l'infini positif. -
Math.Truncate
, qui arrondit vers le haut ou vers le bas vers zéro. -
Math.Round
, qui arrondit à l'entier le plus proche ou le nombre de décimales spécifié. Vous pouvez spécifier le comportement si c'est exactement à égale distance entre les deux possibilités, telles que l'arrondi de sorte que le dernier chiffre est le même ("Round(2.5,MidpointRounding.ToEven)
" devenir 2) ou qu'il soit le plus loin possible à partir de zéro ("Round(2.5,MidpointRounding.AwayFromZero)
" devenir 3).
Le diagramme suivant et le tableau peut aider:
-3 -2 -1 0 1 2 3
+--|------+---------+----|----+--|------+----|----+-------|-+
a b c d e
a=-2.7 b=-0.5 c=0.3 d=1.5 e=2.8
====== ====== ===== ===== =====
Floor -3 -1 0 1 2
Ceiling -2 0 1 2 3
Truncate -2 0 0 1 2
Round (ToEven) -3 0 0 2 3
Round (AwayFromZero) -3 -1 0 2 3
Notez que Round
est beaucoup plus puissant que ce qu'il semble, tout simplement parce qu'il peut arrondir à un nombre de décimales. Tous les autres tour à zéro décimales toujours. Par exemple:
n = 3.145;
a = System.Math.Round (n, 2, MidpointRounding.ToEven); // 3.14
b = System.Math.Round (n, 2, MidpointRounding.AwayFromZero); // 3.15
Avec les autres fonctions, vous devez utiliser multiplier/diviser la ruse pour obtenir le même effet:
c = System.Math.Truncate (n * 100) / 100; // 3.14
d = System.Math.Ceiling (n * 100) / 100; // 3.15
``tours « vers l’infini négatif » en conformité avec le Standard IEEE 754 section 4.
``tours « à l’entier le plus proche vers zéro ».