Operador aritmético de módulo o resto de una división entera. La palabra reservada MOD y el símbolo % son sinónimos.

Este operador se utiliza en las expresiones aritméticas entre dos operandos, para obtener el módulo del primero partido por el segundo.

Por ejemplo 7 MOD 3 devolverá 1, ya que al realizar la división entera de 7 entre 3 se obtiene 2 como cociente y 1 como resto.

Es decir, que n MOD m siempre devolverá un número dentro del rango (0..m-1).

Para comprender de forma sencilla cómo obtener el resto de una operación n MOD m se pueden seguir los siguientes pasos:

Paso 1 - Si n es menor que m, el resultado de la operación MOD es n.

Paso 2 - (Cuando n es mayor o igual que m) se le resta m a n y se vuelve al paso 1.


Uso: Este operador se utiliza en ocasiones en los programas en los que se requiere que una variable contador varíe entre 0 y otro número siempre; si se quiere, por ejemplo, que la variable x varíe entre 0 y 319 indefinidamente (x=0, x=1, x=2, ..., x=319, x=0, x=1, ...) se podría optar por lo siguiente:

  x=0;
  LOOP{
      x=x+1;
      if (x==320) x=0;
      // ...
  }

Pero muchos programas sustituyen estas sentencias por las siguientes:

  x=0;
  LOOP{
      x=(x+1) MOD 320;
      // ...
  }

que realizan exactamente la misma función, ya que el operador MOD truncará la expresión cuando sea mayor o igual que 320 a un valor menor.

El cociente de una división entera se obtiene con el operador / (división).


Ver: Sintaxis - Expresión