This is an alternative site for discovering Elm packages. You may be looking for the official Elm package site instead.

# Basics019

Elm 0.19 renamed these two functions, so here they are with their new names.

modBy : Int -> Int -> Int

Perform modular arithmetic. A common trick is to use (n mod 2) to detect even and odd numbers:

``````modBy 2 0 --> 0

modBy 2 1 --> 1

modBy 2 2 --> 0

modBy 2 3 --> 1
``````

Our `modBy` function works in the typical mathematical way when you run into negative numbers:

``````List.map (modBy 4)
[ -5, -4, -3, -2, -1,  0,  1,  2,  3,  4,  5 ]
--> [  3,  0,  1,  2,  3,  0,  1,  2,  3,  0,  1 ]
``````

Use `remainderBy` for a different treatment of negative numbers, or read Daan Leijen’s Division and Modulus for Computer Scientists for more information.

remainderBy : Int -> Int -> Int

Get the remainder after division. Here are bunch of examples of dividing by four:

``````List.map (remainderBy 4)
[ -5, -4, -3, -2, -1,  0,  1,  2,  3,  4,  5 ]
--> [ -1,  0, -3, -2, -1,  0,  1,  2,  3,  0,  1 ]
``````

Use `modBy` for a different treatment of negative numbers, or read Daan Leijen’s Division and Modulus for Computer Scientists for more information.

``````module Basics019 exposing (modBy, remainderBy)

{-| Elm 0.19 renamed these two functions, so here they are with their
new names.

@docs modBy, remainderBy

-}

{-| Perform [modular arithmetic](https://en.wikipedia.org/wiki/Modular_arithmetic).
A common trick is to use (n mod 2) to detect even and odd numbers:

modBy 2 0 --> 0

modBy 2 1 --> 1

modBy 2 2 --> 0

modBy 2 3 --> 1

Our `modBy` function works in the typical mathematical way when you run into
negative numbers:

List.map (modBy 4)
[ -5, -4, -3, -2, -1,  0,  1,  2,  3,  4,  5 ]
--> [  3,  0,  1,  2,  3,  0,  1,  2,  3,  0,  1 ]

Use [`remainderBy`](#remainderBy) for a different treatment of negative numbers,
or read Daan Leijen’s [Division and Modulus for Computer Scientists][dm] for more
information.

-}
modBy : Int -> Int -> Int
modBy =
flip (%)

{-| Get the remainder after division. Here are bunch of examples of dividing by four:

List.map (remainderBy 4)
[ -5, -4, -3, -2, -1,  0,  1,  2,  3,  4,  5 ]
--> [ -1,  0, -3, -2, -1,  0,  1,  2,  3,  0,  1 ]

Use [`modBy`](#modBy) for a different treatment of negative numbers,
or read Daan Leijen’s [Division and Modulus for Computer Scientists][dm] for more
information.