Math.Floor rounds down, Math.Ceiling rounds up, and Math.Truncate rounds towards zero. Thus, Math.Truncate is like Math.Floor for positive numbers, and like Math.Ceiling for negative numbers. Here's the reference. Show For completeness, Math.Round rounds to the nearest integer. If the number is exactly midway between two integers, then it rounds towards the even one. Reference. See also: Pax Diablo's answer. Highly recommended!
Hans Kesting 36.7k9 gold badges80 silver badges105 bronze badges answered Aug 1, 2008 at 12:26
C. K. YoungC. K. Young 215k44 gold badges383 silver badges426 bronze badges 4 Follow these links for the MSDN descriptions of:
The following diagram and table may help: -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 3Note that Round is a lot more powerful than it seems, simply because it can round to a specific number of decimal places. All the others round to zero decimals always. For example: n = 3.145; a = System.Math.Round (n, 2, MidpointRounding.ToEven); // 3.14 b = System.Math.Round (n, 2, MidpointRounding.AwayFromZero); // 3.15With the other functions, you have to use multiply/divide trickery to achieve the same effect: c = System.Math.Truncate (n * 100) / 100; // 3.14 d = System.Math.Ceiling (n * 100) / 100; // 3.15
Hans Kesting 36.7k9 gold badges80 silver badges105 bronze badges answered Feb 24, 2009 at 2:39
paxdiablopaxdiablo 826k227 gold badges1548 silver badges1915 bronze badges 4 Math.Floor() rounds toward negative infinity Math.Truncate rounds up or down towards zero. For example: Math.Floor(-3.4) = -4 Math.Truncate(-3.4) = -3while Math.Floor(3.4) = 3 Math.Truncate(3.4) = 3answered Jul 19, 2011 at 3:56
0 Math.floor sliiiide to the left... Let's go to work! (⌐□_□) To the left... Math.floor Everybody clap your hands ✋✋ How low can you go? Can you go down low? All the way to the floor? if (this == "wrong") return "i don't wanna be right";Math.truncate(x) is also the same as int(x). answered Feb 11, 2018 at 15:03
PuddlePuddle 2,7551 gold badge17 silver badges32 bronze badges 0 Some examples: Round(1.5) = 2 Round(2.5) = 2 Round(1.5, MidpointRounding.AwayFromZero) = 2 Round(2.5, MidpointRounding.AwayFromZero) = 3 Round(1.55, 1) = 1.6 Round(1.65, 1) = 1.6 Round(1.55, 1, MidpointRounding.AwayFromZero) = 1.6 Round(1.65, 1, MidpointRounding.AwayFromZero) = 1.7 Truncate(2.10) = 2 Truncate(2.00) = 2 Truncate(1.90) = 1 Truncate(1.80) = 1answered Aug 5, 2008 at 11:01
Marek GrzenkowiczMarek Grzenkowicz 16.7k9 gold badges83 silver badges105 bronze badges They are functionally equivalent with positive numbers. The difference is in how they handle negative numbers. For example: Math.Floor(2.5) = 2 Math.Truncate(2.5) = 2 Math.Floor(-2.5) = -3 Math.Truncate(-2.5) = -2MSDN links: - Math.Floor Method - Math.Truncate Method P.S. Beware of Math.Round it may not be what you expect. To get the "standard" rounding result use: float myFloat = 4.5; Console.WriteLine( Math.Round(myFloat) ); // writes 4 Console.WriteLine( Math.Round(myFloat, 0, MidpointRounding.AwayFromZero) ) //writes 5 Console.WriteLine( myFloat.ToString("F0") ); // writes 5
Sнаđошƒаӽ 15.8k12 gold badges73 silver badges86 bronze badges answered Jan 2, 2015 at 13:09
SandeshSandesh 1,1683 gold badges21 silver badges41 bronze badges Try this, Examples: Math.Floor() vs Math.Truncate() Math.Floor(2.56) = 2 Math.Floor(3.22) = 3 Math.Floor(-2.56) = -3 Math.Floor(-3.26) = -4 Math.Truncate(2.56) = 2 Math.Truncate(2.00) = 2 Math.Truncate(1.20) = 1 Math.Truncate(-3.26) = -3 Math.Truncate(-3.96) = -3Also Math.Round() Math.Round(1.6) = 2 Math.Round(-8.56) = -9 Math.Round(8.16) = 8 Math.Round(8.50) = 8 Math.Round(8.51) = 9math.floor() Returns the largest integer less than or equal to the specified number. MSDN system.math.floor math.truncate() Calculates the integral part of a number. MSDN system.math.truncate answered Feb 12, 2016 at 9:12
safin chackosafin chacko 1,3521 gold badge10 silver badges18 bronze badges 0 Math.Floor(): Returns the largest integer less than or equal to the specified double-precision floating-point number. Math.Round(): Rounds a value to the nearest integer or to the specified number of fractional digits.
Sнаđошƒаӽ 15.8k12 gold badges73 silver badges86 bronze badges answered Sep 19, 2013 at 11:44
PinkyPinky 6638 silver badges19 bronze badges 1 Math.floor() will always round down ie., it returns LESSER integer. While round() will return the NEAREST integer math.floor() Returns the largest integer less than or equal to the specified number. math.truncate() Calculates the integral part of a number.
safin chacko 1,3521 gold badge10 silver badges18 bronze badges answered Jul 17, 2018 at 7:14
vidyvidy 1,4444 gold badges23 silver badges39 bronze badges Math.Floor() : It gives the largest integer less than or equal to the given number. Math.Floor(3.45) =3 Math.Floor(-3.45) =-4Math.Truncate(): It removes the decimal places of the number and replace with zero Math.Truncate(3.45)=3 Math.Truncate(-3.45)=-3Also from above examples we can see that floor and truncate are same for positive numbers. answered Jun 24, 2020 at 8:43
AnonymousAnonymous 821 silver badge11 bronze badges Truncate drops the decimal point.
answered Mar 22, 2020 at 19:17
Paul MoorePaul Moore 1361 silver badge16 bronze badges Going by the Mathematical Definition of Floor, that is, "Greatest integer less than or equal to a number", This is completely unambiguous, whereas, Truncate just removes the fractional part, which is equivalent to round towards 0. answered Nov 28, 2020 at 16:49
Which numeric function returns the largest integer less than or equal to value?The FLOOR() function returns the largest integer value that is smaller than or equal to a number.
What is floor () in C?C floor() The floor() function calculates the nearest integer less than the argument passed.
Which number methods returns the smallest integer that is greater than or equal to the argument in Java?ceil() method returns the smallest integer greater than or equal to the given number.
Which function returns the smallest integer greater than or equal to the argument?Description. The ceil() function computes the smallest integer that is greater than or equal to x.
|