Une fonction travaille sur ses propres variables. Celles du programme principal lui restent inaccessibles, même lorsqu'elles portent le même nom.
Le programme
Fonction Ajouter(x)
x ← x + 1
Retourner x
FinFonction
Début
x ← 10
r ← Ajouter(x)
Écrire x
Fin
Objectif
Donner la valeur retournée, la valeur de x dans le programme principal après l'appel, puis répondre aux deux questions de principe.
Rappels
Le paramètre reçoit la valeur au moment de l'appel. Modifier ce paramètre ne touche pas la variable qui a servi à l'appeler.
Pièges
Les deux variables s'appellent x et ne sont pourtant pas la même. Ce sont deux boîtes distinctes, dans deux endroits distincts, et rien ne les relie une fois la valeur recopiée. C'est ce qui permet d'écrire une fonction sans savoir quels noms l'appelant emploie.