Arrondir une valeur décimale à 2 décimales C#

  1. Programme C# pour arrondir une valeur décimale à 2 positions décimales en utilisant la méthode decimal.Round()
  2. C# Programme pour arrondir une valeur décimale à 2 positions décimales en utilisant la méthode Math.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().