Operaciones aritméticas

Las operaciones aditivas y multiplicativas pertenecen a las operaciones aritméticas:

Suma de valores                         i = j + 2;
Resta de valores                        i = j - 3;
Cambio de signo                         x = - x;
Multiplicación de valores               z = 3 * x;
Cociente de la división                 i = j / 5;
Resto de la división                    minutes = time % 60;
Suma de 1 al valor de la variable       i++;
Suma de 1 al valor de la variable       ++i;
Resta de 1 del valor de la variable     k--;
Resta de 1 del valor de la variable     --k;

Operaciones de incremento y decremento se aplican unicamente a las variables; no se usan con las constantes. El incremento prefijo (++i) y decremento prefijo (--k) se aplican a la variable justo antes de usarla en la expresión.

Post-incremento (i++) y post-decremento (k--) se aplican a la variable justo después de usarla en la expresión.

Observación importante

int i=5;
int k = i++ + ++i;

Pueden surgir problemas de cómputo a la hora de pasar la expresión arriba mencionada de un entorno de programación a otro (por ejemplo, de Borland C++ a MQL5). Generalmente el orden de cálculos depende de la implementación del compilador. En la práctica existen dos modos de implementar un post-decremento (post-incremento):

  1. el post-decremento (post-incremento) se aplica a la variable tras calcular toda la expresión;
  2. el post-decremento (post-incremento) se aplica a la variable directamente durante la operación.

En MQL5 en estos momentos está implementado el primer modo de calcular el post-decremento (post-incremento). Pero incluso teniendo este conocimiento, es mejor no experimentar con el uso de este detalle.

Ejemplos:

int a=3;
a++;            // expresión correcta
int b=(a++)*3;  // expresión incorrecta

Véase también

Prioridades y orden de las operaciones