Exercice - Incrémenter et décrémenter des valeurs

Effectué

Les dernières opérations de base que vous allez découvrir dans ce module sont comment incrémenter et décrémenter des valeurs à l’aide d’opérateurs spéciaux qui sont des combinaisons de symboles.

Incrémenter et décrémenter

Fréquemment, vous devez incrémenter et/ou décrémenter des valeurs, en particulier lorsque vous écrivez une logique de bouclage ou du code qui interagit avec une structure de données.

L’opérateur += ajoute et affecte la valeur à droite de l’opérateur à la valeur à gauche de l’opérateur. Par conséquent, les lignes deux et trois dans l’extrait de code suivant sont les mêmes :

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

L’opérateur ++ incrémente la valeur de la variable de 1. Par conséquent, les lignes deux et trois dans l’extrait de code suivant sont les mêmes :

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

Ces mêmes techniques peuvent être utilisées pour la soustraction, la multiplication et bien plus encore. Les étapes d’exercice suivantes mettent en évidence quelques-uns.

Remarque

Les opérateurs tels que +=, , -=*=, ++et -- sont appelés opérateurs d’assignation composée, car ils ont composé une opération en plus d’affecter le résultat à la variable. L’opérateur += est spécifiquement appelé opérateur d’affectation d’addition .

Écrire du code pour incrémenter et décrémenter une valeur

  1. Sélectionnez tout le code que vous avez écrit précédemment dans l’Éditeur de code C# , puis appuyez sur Supprimer ou Retour arrière pour le supprimer.

  2. Entrez le code suivant dans l’éditeur de code 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. Exécutez le code. La sortie suivante doit s’afficher :

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

Remarque

Dans le « second incrément », vous avez utilisé value += 1;. Toutefois, vous pouvez avoir utilisé n’importe quelle valeur littérale int (ou variable) pour incrémenter cette quantité. Il en est de même pour le « deuxième décrément » : value -= 1;.

Positionner les opérateurs d’incrémentation et de décrémentation

Les opérateurs d’incrémentation et de décrémentation ont une qualité intéressante, selon leur position, ils effectuent leur opération avant ou après avoir récupéré leur valeur. En d’autres termes, si vous utilisez l’opérateur avant la valeur comme indiqué ++value, l’incrément se produit avant la récupération de la valeur. De même, value++ incrémente la valeur après la récupération de la valeur.

Utiliser l’opérateur d’incrément avant et après la valeur

  1. Supprimez le code des étapes précédentes et entrez le code suivant dans l’Éditeur de code C# :

    int value = 1;
    value++;
    Console.WriteLine("First: " + value);
    Console.WriteLine($"Second: {value++}");
    Console.WriteLine("Third: " + value);
    Console.WriteLine("Fourth: " + (++value));
    
  2. Exécutez le code. La sortie suivante doit s’afficher :

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

Notez cette ligne de code :

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

Il existe deux étapes pour cette ligne :

  1. Récupérez la valeur actuelle de la variable value et utilisez-la dans l’opération d’interpolation de chaîne.
  2. Incrémentez la valeur.

La ligne de code suivante confirme que la valeur était, en fait, incrémentée.

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

En revanche, tenez compte de la dernière ligne de code :

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

Ici, l’ordre des opérations est basculé, car l’opérateur ++ est placé avant l’opérande value.

  1. Incrémentez la valeur.
  2. Récupérez la nouvelle valeur incrémentée de la variable value et utilisez-la dans l’opération de chaîne.

Bien qu’il ne soit pas strictement nécessaire, vous avez ajouté des parenthèses autour de l’expression (++value) pour améliorer la lisibilité. Le fait de voir autant d’opérateurs + les uns après les autres pourrait être mal compris par d’autres développeurs. Les décisions stylistiques comme celle-ci sont subjectives. Toutefois, étant donné que vous allez écrire le code une fois, mais le lire plusieurs fois, vous devez hiérarchiser la lisibilité.

Récapitulatif

Voici ce que vous avez appris jusqu’à présent concernant les opérations mathématiques en C# :

  • Utilisez des opérateurs d’affectation composée comme +=, , -=*=, ++et -- pour effectuer une opération mathématique telle que l’incrément ou la décrémentation, puis affectez le résultat à la variable d’origine.
  • Les opérateurs d’incrémentation et de décrémentation fonctionnent différemment selon qu’ils se trouvent avant ou après l’opérande.