Arrondir une valeur décimale à 2 décimales C#
- 
          
            Programme C# pour arrondir une valeur décimaleà 2 positionsdécimalesen utilisant la méthodedecimal.Round()
- 
          
            C# Programme pour arrondir une valeur décimaleà 2 positionsdécimalesen utilisant la méthodeMath.Round()
 
En C#, nous pouvons facilement arrondir un nombre décimal en utilisant différentes méthodes, par exemple, decimal.Round() et Math.Round().
Cet article va se concentrer sur les méthodes permettant d’arrondir une valeur décimale à 2 positions décimales.
Programme C# pour arrondir une valeur décimale à 2 positions décimales en utilisant la méthode decimal.Round()
La méthode decimal.Round() est la méthode la plus simple qui est utilisée pour arrondir un nombre décimal à un nombre de chiffres spécifié. Cette méthode autorise jusqu’à 28 positions décimales.
La syntaxe correcte pour utiliser cette méthode est la suivante:
decimal.Round(decimalValueName, integerValue);
Exemple de code:
using System;
public class RoundDecimal {
  public static void Main() {
    decimal decimalValue = 123.456M;
    Console.WriteLine("The Decimal Value Before Applying Method: {0}", decimalValue);
    Console.WriteLine();
    decimalValue = decimal.Round(decimalValue, 2);
    Console.WriteLine("The Decimal Value After Applying Method: {0}", decimalValue);
  }
}
Production:
The Decimal Value Before Applying Method : 123.456
    The Decimal Value After Applying Method : 123.46
Cette méthode lance l’exception ArgumentOutOfRangeException si la valeur entière qui indique le nombre de décimales à arrondir n’est pas comprise dans une plage de 0 à 28. Cette exception est alors traitée en utilisant un bloc try-catch.
Il existe une autre façon d’utiliser la méthode decimal.Round(), un exemple de code est donné ci-dessous:
Exemple de code:
using System;
public class RoundDecimal {
  public static void Main() {
    decimal decimalValue = 12.345M;
    Console.WriteLine("The Decimal Value Before Applying Method: {0}", decimalValue);
    Console.WriteLine();
    decimalValue = decimal.Round(decimalValue, 2, MidpointRounding.AwayFromZero);
    Console.WriteLine("The Decimal Value After Applying Method: {0}", decimalValue);
  }
}
Production:
The Decimal Value Before Applying Method : 12.345
    The Decimal Value After Applying Method : 12.35
La méthode MidpointRounding.AwayFromZero est utilisée pour arrondir le nombre à partir de zéro. Son équivalent est MidpointRounding.ToEven, qui arrondit le nombre décimal donné vers le nombre pair le plus proche.
Exemple de code:
using System;
public class RoundDecimal {
  public static void Main() {
    decimal decimalValue = 12.345M;
    Console.WriteLine("The Decimal Value Before Applying Method: {0}", decimalValue);
    Console.WriteLine();
    decimalValue = decimal.Round(decimalValue, 2, MidpointRounding.ToEven);
    Console.WriteLine("The Decimal Value After Applying Method: {0}", decimalValue);
  }
}
Production:
The Decimal Value Before Applying Method : 12.345
    The Decimal Value After Applying Method : 12.34
C# Programme pour arrondir une valeur décimale à 2 positions décimales en utilisant la méthode Math.Round()
La méthode Math.Round() est la même que la méthode decimal.Round() dans ses fonctionnalités.
La syntaxe correcte pour utiliser cette méthode est la suivante:
Math.Round(decimalValueName, integerValue);
Exemple de code:
using System;
public class RoundDecimal {
  public static void Main() {
    decimal decimalValue = 123.456M;
    Console.WriteLine("The Decimal Value Before Applying Method: {0}", decimalValue);
    Console.WriteLine();
    decimalValue = Math.Round(decimalValue, 2);
    Console.WriteLine("The Decimal Value After Applying Method: {0}", decimalValue);
  }
}
Production:
The Decimal Value Before Applying Method : 123.456
    The Decimal Value After Applying Method : 123.46
Il lance également des exceptions tout comme la méthode decimal.Round(), qui est ensuite traitée en utilisant le bloc try-catch. Nous pourrions également spécifier la méthode MidpointRounding comme celle de la méthode decimal.Round().