
truncate(+Number, -Result)
-Result is truncate(+Number)

   Unifies Result with the closest integer value between 0 and
Number, and of the same numeric type as Number.



Arguments
   Number              A number.
   Result              Output: number.

Type
   Arithmetic

Description

   Unifies Result with the closest integer value between 0 and Number,
   and of the same numeric type as Number.

   This operation works on all numeric types. The result value is the
   closest integral value that lies between 0 and Number (rounding
   towards zero).

   The result type is the same as the argument type.  To convert the
   type to integer, use integer/2.

   This predicate can be used as a function in arithmetic expressions.
   In coroutining mode, if Number is uninstantiated, the call to truncate/2
   is delayed until this variable is instantiated.



Modes and Determinism
   truncate(+, -) is det

Exceptions
     4 --- Number is not instantiated (non-coroutining mode only).
    24 --- Number is not of a numeric type.

Examples
   
    Result is truncate(1.8).		% gives Result = 1.0
    Result is truncate(-1.8).		% gives Result = -1.0
    Result is truncate(1.0).		% gives Result = 1.0
    Result is truncate(-0.0).		% gives Result = -0.0
    Result is truncate(5).		% gives Result = 5


See Also
   is / 2, floor / 2, ceiling / 2, round / 2, integer / 2, fix / 2
