quotRem -package:numeric-prelude

Simultaneous quot and rem. WARNING: This function is partial (because it throws when 0 is passed as the divisor) for all the integer types in base.
simultaneous quot and rem WARNING: This function is partial (because it throws when 0 is passed as the divisor) for all the integer types in base.
simultaneous quot and rem
Simultaneous quot and rem.
Division with remainder.
\x y -> y == 0 || let (q, r) = x `quotRem` y in x == q * y + r
simultaneous quot and rem
The quotient and remainder of a type-level integer and a natural number. For a negative dividend, the remainder part is negative such that x = q*y + r @since 0.1.4
Used to implement quotRem for the Integral typeclass. This gives a tuple equivalent to
(quot x y, mod x y)

Example

>>> quotRemInt 10 2
(5,0)
>>> quotRem 10 2
(5,0)
Rounds towards zero.
Takes high word of dividend, then low word of dividend, then divisor. Requires that high word < divisor.
Used to implement quotRem for the Integral typeclass. This gives a tuple equivalent to
(quot x y, mod x y)

Example

>>> quotRemInteger 10 2
(5,0)
>>> quotRem 10 2
(5,0)
Deprecated: Use integerQuotRem# instead
Simultaneous quotInteger and remInteger. Divisor must be non-zero otherwise the GHC runtime will terminate with a division-by-zero fault.