Open In App

Decimal.Round() Method in C# | Set – 1

Last Updated : 20 Mar, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

Decimal.Round Method is used to round a value to the nearest integer or a specified number of decimal places. There are 4 methods in the overload list of this method as follows:

  • Round(Decimal) Method
  • Round(Decimal, Int32) Method
  • Round(Decimal, MidpointRounding) Method
  • Round(Decimal, Int32, MidpointRounding) Method

Here, we will discuss the first two methods.

Decimal.Round(Decimal) Method

This method is used to round a decimal value to the nearest integer.

Syntax: public static decimal Round (decimal d);
Here, it takes a decimal number to round.

Return Value: This method returns the integer which is nearest to the d parameter. If d is halfway between two integers, one of which is even and the other odd, the even number is returned.

Exceptions: This method throws OverflowException if the result is outside the range of a Decimal value.

Below programs illustrate the use of Decimal.Round(Decimal) Method:

Example 1:




// C# program to demonstrate the
// Decimal.Round(Decimal) Method
using System;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        try {
  
            // Declaring and initializing value
            decimal value = 184467440737095.51615M;
  
            // getting rounded decimal
            // using Round() method
            decimal round = Decimal.Round(value);
  
            // Display the value
            Console.WriteLine("Rounded value is {0}", round);
        }
  
        catch (OverflowException e) 
        {
            Console.WriteLine("Value must not be out of bound");
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}


Output:

Rounded value is 184467440737096

Example 2: For OverflowException




// C# program to demonstrate the
// Decimal.Round(Decimal) Method
using System;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
  
        try 
        {
  
            // Declaring and initializing value
            decimal value = 79228162514264337593543950335.5M;
  
            // getting rounded decimal
            // using Round() method
            decimal round = Decimal.Round(value);
  
            // Display the value
            Console.WriteLine("Rounded value is {0}", round);
        }
  
        catch (OverflowException e) 
        {
            Console.WriteLine("Value must not be out of bound");
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}


Compile-Time Errors:

prog.cs(15,51): error CS0594: Floating-point constant is outside the range of type `decimal’

Round(Decimal, Int32) Method

This method is used to round a Decimal value to a specified number of decimal places.

Syntax: public static decimal Round (decimal d, int decimals);

Parameters:
d: It is a decimal number which is to be rounded.
decimals: It is a value from 0 to 28 that specifies the number of decimal places to round to.

Return Value: This method returns the decimal number equivalent to d rounded to decimals number of decimal places.

Exception: This method throws ArgumentOutOfRangeException if decimals is not a value from 0 to 28.

Below programs illustrate the use of Decimal.Round(Decimal, Int32) Method:

Example 1:




// C# program to demonstrate the
// Decimal.Round(Decimal) Method
using System;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        try {
  
            // Declaring and initializing value
            decimal value = 7922816251426433759354.39503305M;
  
            // getting rounded decimal
            // using Round() method
            decimal round = Decimal.Round(value, 4);
  
            // Display the value
            Console.WriteLine("Rounded value is {0}", round);
        }
  
        catch (ArgumentOutOfRangeException e) 
        {
            Console.WriteLine("decimal place is not within bound");
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}


Output:

Rounded value is 7922816251426433759354.3950

Example 2: For ArgumentOutOfRangeException




// C# program to demonstrate the
// Decimal.Round(Decimal) Method
using System;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        try 
        {
  
            // Declaring and initializing value
            decimal value = 7922816251426433759354.39503305M;
  
            // getting rounded decimal
            // using Round() method
            decimal round = Decimal.Round(value, 29);
  
            // Display the value
            Console.WriteLine("Rounded value is {0}", round);
        }
  
        catch (ArgumentOutOfRangeException e) 
        {
            Console.WriteLine("Decimal place is not within bound");
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}


Output:

Decimal place is not within bound
Exception Thrown: System.ArgumentOutOfRangeException

Reference:



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads