Returns the largest integer that is less than or equal to the argument, fuzzed to avoid unexpected floating-point results
Category: Truncation
FLOOR ( argument )
argument
is numeric.
If the argument is within 1E-12 of an integer, the function returns that integer.
Unlike the FLOORZ function, the FLOOR function fuzzes the result. If the argument is within 1E-12 of an integer, the FLOOR function fuzzes the result to be equal to that integer. The FLOORZ function does not fuzz the result. Therefore, with the FLOORZ function you might get unexpected results.
The following SAS statements produce these results.
SAS Statements | Results |
---|---|
var1=2.1; a=floor(var1); put a; | 2 |
var2=-2.4; b=floor(var2); put b; | -3 |
c=floor(-1.6); put c; | -2 |
d=floor(1.-1.e-13); put d; | 1 |
e=floor(763); put e; | 763 |
f=floor(-223.456); put f; | -224 |
Functions:
'FLOORZ Function' on page 546