AnteriorPosterior

2.9. Incremento y decremento

Por: Nacho Cabanes
Actualizado: 20-04-2019 09:13
Tiempo de lectura estimado: 2 min.

 

C++

2.9. Incremento y decremento

Hay otra operación que es muy frecuente cuando se crean programas, pero que no tiene un símbolo específico para representarla en matemáticas. Es incrementar el valor de una variable en una unidad:

a = a+1;

Pues bien, en C y C++, existe una notación más compacta para esta operación, y para la opuesta (el decremento):

a++; // es lo mismo que a = a+1;
a--; // es lo mismo que a = a-1;

Pero esto tiene más misterio todavía del que puede parecer en un primer vistazo: podemos distinguir entre "preincremento" y "postincremento". En C es posible hacer asignaciones como

b = a++;

Así, si "a" valía 2, lo que esta instrucción hace es dar a "b" el valor de "a" y aumentar el valor de "a". Por tanto, al final tenemos que b=2 y a=3 (postincremento: se incrementa "a" tras asignar su valor).

En cambio, si escribimos

b = ++a;

y "a" valía 2, primero aumentamos "a" y luego los asignamos a "b" (preincremento), de modo que a=3 y b=3.

Por supuesto, también podemos distinguir postdecremento (a--) y predecremento (--a).

Ejercicios propuestos:

  • (2.9.1) Crear un programa que use tres variables x,y,z. Sus valores iniciales serán 15, -10, 2.147.483.647. Se deberá incrementar el valor de estas variables. ¿Qué valores esperas que se obtengan? Contrástalo con el resultado obtenido por el programa.
  • (2.9.2) ¿Cuál sería el resultado de las siguientes operaciones? a=5; b=++a; c=a++; b=b*5; a=a*2;

Y ya que estamos hablando de las asignaciones, hay que comentar que en C y en C++ es posible hacer asignaciones múltiples:

a = b = c = 1;

22224 visitas desde el 20-04-2019

AnteriorPosterior