Écrire et exécuter un algorithme

L'ordre des étapes, ça compte

L'ordre des étapes, ça compte

Un algorithme est une suite ordonnée d'instructions : changer l'ordre des étapes peut complètement changer le résultat, voire rendre l'algorithme impossible à exécuter.

Reprenons la recette de thé. Que se passe-t-il si on inverse deux étapes ?

1. (Verser l'eau chaude sur le sachet)
2. (Faire bouillir de l'eau)

Ici, l'étape 1 demande de verser de l'eau chaude qui n'a pas encore été chauffée à l'étape 2 ! L'instruction est impossible à réaliser dans cet ordre. C'est exactement ce qui se passe en informatique quand on utilise une variable avant de l'avoir créée, ou qu'on affiche un résultat avant de l'avoir calculé.

Regarde ce petit algorithme, en pseudo-code, pour calculer une moyenne :

1. LIRE note1, note2
2. moyenne <- (note1 + note2) / 2
3. AFFICHER moyenne

Si on inverse les étapes 2 et 3, on obtiendrait :

1. LIRE note1, note2
2. AFFICHER moyenne
3. moyenne <- (note1 + note2) / 2

À l'étape 2, la variable moyenne n'existe pas encore : elle sera calculée seulement à l'étape 3 ! L'ordinateur ne peut pas afficher une valeur qui n'existe pas encore : il renverrait une erreur.

Cette règle est fondamentale : un ordinateur exécute les instructions dans l'ordre exact où elles sont écrites, une par une, sans jamais deviner ni réorganiser. C'est pour cela qu'il faut toujours réfléchir soigneusement à l'enchaînement logique des étapes avant d'écrire un algorithme : d'abord ce dont on a besoin (les entrées et les calculs intermédiaires), ensuite seulement ce qu'on veut obtenir (la sortie).