---
title: "Operador módulo"
---

El operador módulo (`%`) trabaja con dos números enteros, y resulta en el 'residuo' de dividir uno por otro.

Por ejemplo, cuando hacemos la división `3/2`, el resultado es 1, y el 'residuo' es 1 también:

```java
3/2 == 1
3%2 == 1
```
La división `4/2` resulta en 2, con un residuo de 0:

```java
4/2 == 2
4%2 == 0
```

La división `5/2` resulta también en 2, pero con un residuo de 1:

```java
5/2 == 2
5%2 == 1
``` 

Veamos qué pasa con una secuencia de números, módulo 2:

```java
0%2 == 0
1%2 == 1
2%2 == 0
3%2 == 1
4%2 == 0
5%2 == 1
6%2 == 0
7%2 == 1
8%2 == 0
...
```
¿Notas cómo el resultado alterna entre 0 y 1?

Ahora veamos qué pasa con la misma secuencia de números, módulo 3:

```java
0%3 == 0
1%3 == 1
2%3 == 2
3%3 == 0
4%3 == 1
5%3 == 2
6%3 == 0
7%3 == 1
8%3 == 2
...
```

Aquí el resultado alterna y repite los valores 0,1,2.

Podemos generalizar diciendo que el resultado de cualquier número, módulo `N`: 

* Va a resultar en un número entre 0 y `N-1`
* va a resultar en uno entre `N` posibles resultados
* Si el resultado es 0, entonces el número original es múltiplo de `N`

Revisa las listas anteriores con estas nociones.
