To round any number to its nearest
whole number, use the overloaded static Math.Round
method, which takes only a single arguments:
int x = (int)Math.Round(2.5555); // x == 3
If you need to round a floating-point value to a specific number of
decimal places, use the overloaded static
Math.Round
method, which takes two arguments:
decimal x = Math.Round(2.5555, 2); // x == 2.56
The Round
method is easy to use; however, you need
to be aware of how the rounding operation works. The
Round
method follows the IEEE Standard 754,
section 4 standard. This means that if the number being rounded is
halfway between two numbers, the Round
operation
will always round to the even number. An example will show what this
means to you:
decimal x = Math.Round(1.5); // x == 2 decimal y = Math.Round(2.5); // y == 2
Notice that 1.5
is rounded up to the nearest even
whole number and 2.5
is rounded down to the
nearest even whole number. Keep this in mind when using the
Round
method.
See Recipe 1.1; see the “Math Class” topic in the MSDN documentation.