routine floor

Documentation for routine floor assembled from the following types:

role Rational

From Rational

(Rational) method floor

Defined as:

method floor(Rational:D: --> Int:D)

Return the largest integer not greater than the invocant. If denominator is zero, fails with X::Numeric::DivideByZero.

class Cool

From Cool

(Cool) routine floor

Defined as:

multi sub floor(Numeric(Cool))
multi method floor

Coerces the invocant (or in sub form, its argument) to Numeric, and rounds it downwards to the nearest integer.

say "1.99".floor;       # OUTPUT: «1␤» 
say "-1.9".floor;       # OUTPUT: «-2␤» 
say 0.floor;            # OUTPUT: «0␤»

class Complex

From Complex

(Complex) method floor

Defined as:

method floor(Complex:D: --> Complex:D)

Returns self.re.floor + self.im.floor. That is, each of the real and imaginary parts is rounded to the highest integer not greater than the value of that part.

say (1.2-3.8i).floor;           # OUTPUT: «1-4i␤»

role Real

From Real

(Real) method floor

method floor(Real:D --> Int:D)

Return the largest integer not greater than the number.