Ejercicio: Incremento y decremento de valores

Completado

Las operaciones básicas finales que obtendrá información sobre este módulo son cómo incrementar y disminuir los valores mediante operadores especiales que son combinaciones de símbolos.

Incremento y disminución

Con frecuencia, tendrá que incrementar o disminuir los valores, especialmente cuando se escribe lógica de bucle o código que interactúa con una estructura de datos.

El operador += suma el valor a la derecha del operador al valor a la izquierda del operador y lo asigna. Por lo tanto, las líneas dos y tres del siguiente fragmento de código son las mismas:

int value = 0;     // value is now 0.
value = value + 5; // value is now 5.
value += 5;        // value is now 10.

El ++ operador incrementa el valor de la variable en 1. Por lo tanto, las líneas dos y tres del siguiente fragmento de código son las mismas:

int value = 0;     // value is now 0.
value = value + 1; // value is now 1.
value++;           // value is now 2.

Estas mismas técnicas se pueden usar para la resta, multiplicación y mucho más. En los siguientes pasos del ejercicio se resaltarán algunos.

Nota:

Los operadores como +=, -=, *=, ++y -- se conocen como operadores de asignación compuestos porque combinan alguna operación además de asignar el resultado a la variable. El += operador se denomina específicamente operador de asignación de suma .

Escribir código para incrementar y disminuir un valor

  1. Seleccione todo el código que escribió anteriormente en el Editor de código de C# y presione Eliminar o Retroceso para eliminarlo.

  2. Escriba el código siguiente en el Editor de código de C#:

    int value = 1;
    
    value = value + 1;
    Console.WriteLine("First increment: " + value);
    
    value += 1;
    Console.WriteLine("Second increment: " + value);
    
    value++;
    Console.WriteLine("Third increment: " + value);
    
    value = value - 1;
    Console.WriteLine("First decrement: " + value);
    
    value -= 1;
    Console.WriteLine("Second decrement: " + value);
    
    value--;
    Console.WriteLine("Third decrement: " + value);
    
  3. Ejecute el código. Deberías ver la siguiente salida:

    First increment: 2
    Second increment: 3
    Third increment: 4
    First decrement: 3
    Second decrement: 2
    Third decrement: 1
    

Nota:

En el "segundo incremento", usaste value += 1;. Sin embargo, podría haber usado cualquier valor literal int (o una variable) para incrementar esa cantidad. Lo mismo se aplica al "segundo decremento": value -= 1;.

Colocación de los operadores de incremento y decremento

Tanto los operadores de incremento como los de decremento tienen una cualidad interesante: dependiendo de su posición, realizan su operación antes o después de obtener su valor. En otras palabras, si usa el operador antes del valor como en ++value, el incremento se producirá antes de recuperar el valor. Del mismo modo, value++ incrementará el valor después de recuperar el valor.

Utiliza el operador de incremento antes y después del valor

  1. Elimine el código de los pasos anteriores y escriba el código siguiente en el Editor de código de C#:

    int value = 1;
    value++;
    Console.WriteLine("First: " + value);
    Console.WriteLine($"Second: {value++}");
    Console.WriteLine("Third: " + value);
    Console.WriteLine("Fourth: " + (++value));
    
  2. Ejecute el código. Deberías ver la siguiente salida:

    First: 2
    Second: 2
    Third: 3
    Fourth: 4
    

Observe esta línea de código:

Console.WriteLine($"Second: {value++}");

Hay dos pasos en esta línea.

  1. Recupere el valor actual de la variable value y úselo en la operación de interpolación de cadenas.
  2. Incremente el valor.

La siguiente línea de código confirma que el valor se incrementó, de hecho.

Console.WriteLine("Third: " + value);

Por el contrario, tenga en cuenta la última línea de código:

Console.WriteLine("Fourth: " + (++value));

Aquí se cambia el orden de las operaciones porque el ++ operador se coloca antes del operando value.

  1. Incremente el valor.
  2. Recupere el nuevo valor incrementado de la variable value y úselo en la operación de cadena.

Aunque no es estrictamente necesario, ha agregado paréntesis alrededor de la expresión (++value) para mejorar la legibilidad. Ver tantos operadores + uno junto a otro parece que podría ser malinterpretado por otros desarrolladores. Las decisiones estilísticas como esta son subjetivas. Sin embargo, dado que escribirá el código una vez, pero lo leerá muchas veces, debe priorizar la legibilidad.

Resumen

Esto es lo que ha aprendido hasta ahora sobre las operaciones matemáticas en C#:

  • Use operadores de asignación compuestas como +=, -=, *=, ++y -- para realizar una operación matemática como incremento o decremento y, a continuación, asigne el resultado a la variable original.
  • Los operadores de incremento y decremento tienen diferentes comportamientos dependiendo de si el operador se encuentra antes o después del operando.