Method: Numeric#divmod
- Defined in:
- numeric.c
#divmod(other) ⇒ Array
Returns a 2-element array [q, r], where
q = (self/other).floor # Quotient
r = self % other # Remainder
Of the Core and Standard Library classes, only Rational uses this implementation.
Examples:
Rational(11, 1).divmod(4) # => [2, (3/1)]
Rational(11, 1).divmod(-4) # => [-3, (-1/1)]
Rational(-11, 1).divmod(4) # => [-3, (1/1)]
Rational(-11, 1).divmod(-4) # => [2, (-3/1)]
Rational(12, 1).divmod(4) # => [3, (0/1)]
Rational(12, 1).divmod(-4) # => [-3, (0/1)]
Rational(-12, 1).divmod(4) # => [-3, (0/1)]
Rational(-12, 1).divmod(-4) # => [3, (0/1)]
Rational(13, 1).divmod(4.0) # => [3, 1.0]
Rational(13, 1).divmod(Rational(4, 11)) # => [35, (3/11)]
756 757 758 759 760 |
# File 'numeric.c', line 756
static VALUE
num_divmod(VALUE x, VALUE y)
{
return rb_assoc_new(num_div(x, y), num_modulo(x, y));
}
|