| Description |
The Truncate function rounds a decimal number Value to a whole value (integer) by removing the fractional part.
Therefore negative numbers become larger in absolute value, and positive numbers become smaller.
The optional DecPlaces parameter defines this precision, up to a maximum of 28 decimal places.
The rounding uses Bankers rules, where an exact half value causes a rounding to an even number:
| 12.4 rounds to | 12 |
| 12.5 rounds to | 12 // Round down to even |
| 12.6 rounds to | 13 |
| | |
| 13.4 rounds to | 13 |
| 13.5 rounds to | 14 // Round up to even |
| 13.6 rounds to | 14 |
|
| | Notes | Compare with Floor and Round.
Static methods are not methods of an object - they are simply class functions or procedures available at any time.
|
|
| Microsoft MSDN Links |
System
System.Decimal
|
|
|
| A simple example |
program Project1;
{$APPTYPE CONSOLE}
var
valueA, valueB : Decimal;
result : Decimal;
begin
valueA := 1.2;
valueB := -1.2;
Console.WriteLine('valueA = {0}', valueA.ToString);
Console.WriteLine('valueB = {0}', valueB.ToString);
Console.WriteLine;
result := System.Decimal.Truncate(valueA);
Console.WriteLine('valueA truncate = ' + result.ToString);
result := System.Decimal.Truncate(valueB);
Console.WriteLine('valueB truncate = ' + result.ToString);
Console.ReadLine;
end.
| | Show full unit code | valueA = 1.2
valueB = -1.2
valueA truncate = 1
valueB truncate = -1
|
| |
|
|
|