Arduino Reference - Modulo

Arduino

Reference Language | Libraries | Comparison | Changes

## % (modulo)

#### Description

Calculates the remainder when one integer is divided by another. It is useful for keeping a variable within a particular range (e.g. the size of an array).

#### Syntax

result = dividend % divisor

#### Parameters

dividend: the number to be divided

divisor: the number to divide by

#### Returns

the remainder

#### Examples

    x = 7 % 5;   // x now contains 2
    x = 9 % 5;   // x now contains 4
    x = 5 % 5;   // x now contains 0
    x = 4 % 5;   // x now contains 4

#### Example Code

    /* update one value in an array each time through a loop */

    int values[10];
    int i = 0;

    void setup() {}

    void loop()
    {
      values[i] = analogRead(0);
      i = (i + 1) % 10;   // modulo operator rolls over variable
    }

#### Tip

The modulo operator does not work on floats.

#### See also

- division

Reference Home

Corrections, suggestions, and new documentation should be posted to the Forum.

The text of the Arduino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.

©Arduino | Edit Page | Page History | Printable View | All Recent Site Changes