Algorithme : Echange de variables
Joana a conçu l'algorithme suivant afin d'échanger les valeurs de deux variables a et b :
variables
     a, b : nombres réels
début algorithme
     1.   saisir a
     2.   saisir b
     3.   afficher "La valeur de a est ", a
     4.   afficher "La valeur de b est ", b
     5.   a prend la valeur b
     6.   b prend la valeur a
     7.   afficher "La valeur de a est ", a
     8.   afficher "La valeur de b est ", b
fin algorithme
- On saisit 2 comme valeur pour a et 5 comme valeur pour b. - Compléter le tableau suivant : - Ligne - a - b - Affichage - 1. - 2 - 2. - 2 - 5 - 3. - 2 - 5 - La valeur de a est 2 - 4. - 2 - 5 - La valeur de b est 5 - 5. - ... - ... - 6. - ... - ... - 7. - ... - ... - ... - 8. - ... - ... - ... - L'algorithme de Joana permet-il d'intervertir correctement les valeurs des variables a et b ? 
- Corriger l'algorithme de Joana de façon à ce qu'il fonctionne correctement. 
Corrigé
- Ligne - a - b - Affichage - 1. - 2 - 2. - 2 - 5 - 3. - 2 - 5 - La valeur de a est 2 - 4. - 2 - 5 - La valeur de b est 5 - 5. - 5 - 5 - 6. - 5 - 5 - 7. - 5 - 5 - La valeur de a est 5 - 8. - 5 - 5 - La valeur de b est 5 - L'algorithme de Joana ne fonctionne pas correctement. - En effet, en ligne 5, l'instruction « a prend la valeur b » écrase l'ancienne valeur de a qui est 2 par la valeur 5 et la valeur 2 est donc « perdue ». - La ligne 6 n'a alors aucun effet puisqu'elle remplace la valeur 5 par... la valeur 5 !!! 
- Il faut rajouter une troisième variable qui stockera l'ancienne valeur de a comme par exemple : - variables a, b, c : nombres réels début algorithme 1. saisir a 2. saisir b 3. afficher "La valeur de a est ", a 4. afficher "La valeur de b est ", b 5. c prend la valeur a 6. a prend la valeur b 7. b prend la valeur c 8. afficher "La valeur de a est ", a 9. afficher "La valeur de b est ", b fin algorithme- Le fonctionnement pas à pas lorsque l'on entre respectivement 2 et 5 pour a et b donne alors : - Ligne - a - b - c - Affichage - 1. - 2 - 2. - 2 - 5 - 3. - 2 - 5 - La valeur de a est 2 - 4. - 2 - 5 - La valeur de b est 5 - 5. - 2 - 5 - 2 - 6. - 5 - 5 - 2 - 7. - 5 - 2 - 2 - 8. - 5 - 2 - 2 - La valeur de a est 5 - 9. - 5 - 2 - 2 - La valeur de b est 2 - Les valeurs de a et de b ont bien été interverties !