IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Cours complet pour apprendre à programmer en D


précédentsommairesuivant

9. Affectation et ordre d'évaluation

Les deux premières difficultés auxquelles sont confrontés les étudiants quand ils apprennent à programmer concernent l'opération d'affectation et l'ordre d'évaluation.

9-1. Opération d'affectation

Vous verrez des lignes similaires à celle qui suit dans presque tous les programmes écrits dans presque n'importe quel langage de programmation :

 
Sélectionnez
a = 10;

Le sens de cette ligne est « changer la valeur de a par 10 ». De façon similaire, la ligne suivante veut dire « changer la valeur de b par 20 » :

 
Sélectionnez
b = 20;

D'après cette information, que peut-on dire de cette ligne ?

 
Sélectionnez
a = b;

Malheureusement, la ligne n'est pas une égalité mathématique classique comme nous en avons tous l'habitude. L'expression ci-dessus ne veut pas dire « a est égal à b » ! En appliquant la même logique que pour les lignes précédentes, l'expression ci-dessus doit vouloir dire « changer la valeur de a par b ». « Changer la valeur de a par b » veut dire « changer la valeur de a par la valeur de b ».

Le symbole connu « = » des mathématiques a un sens complètement différent en programmation : changer la valeur de gauche par celle de droite.

9-2. Ordre d'évaluation

Les opérations d'un programme sont appliquées étape par étape dans un ordre spécifique. Nous pouvons voir les t expressions précédentes dans un programme dans cet ordre :

 
Sélectionnez
a = 10;
b = 20;
a = b;

Le sens de ces trois lignes ensemble est : « changer la valeur de a par 10, ensuite changer la valeur de b par 20, ensuite changer la valeur de a par celle de b ». En conséquence, après que ces trois opérations sont effectuées, les valeurs de a et de b sont toutes les deux égales à 20.

9-3. 3 Exercice

Observer que les trois opérations suivantes échangent les valeurs de a et de b. Si leurs valeurs de départ sont respectivement 1 et 2, après les opérations les valeurs deviennent 2 et 1.

 
Sélectionnez
c = a;
a = b;
b = c;

SolutionAffectation et ordre d'évaluation - Correction.


précédentsommairesuivant