Pour illustrer cette technique, nous allons rechercher un article (demandé par l'utilisateur)
dans une base d'articles (stockée dans un tableau) :
DÉBUT
\\ on fixe dans le programme la base d'articles
n = 3
nom = ["baguette", "journal", "magazine"]
prixUnitaire = [0.8, 0.95, 2.5]
\\ recherche d'un article et de son prix unitaire
ÉCRIRE "article recherché : "
LIRE nom_cherche
...
FIN
Pour cela, nous allons utiliser une boucle
afin de trouver la position de l'article
cherché dans le tableau.
Version avec Pour |
Version avec Tantque |
...
position = -1
POUR i=1 JUSQU'À n FAIRE
SI (nom[i] = nom_cherche) ALORS
position = i
FINSI
FINPOUR
\\ affichage du resultat
SI (position = -1) ALORS
ÉCRIRE prixUnitaire[position]
SINON
ÉCRIRE "article non repertorie"
FINSI
|
...
position = -1
i = 1
TANTQUE (position=-1) ET (i<=n) FAIRE
SI (nom[i] = nom_cherche) ALORS
position = i
SINON
i = i + 1
FINSI
FINTANTQUE
\\ affichage du resultat
...
|
Le point délicat de l'algorithme concerne le cas où l'article n'est pas répertorié.
Cela conduit à initialiser, avant la boucle, la variable position à une valeur (-1)
ne pouvant être un numéro d'article répertorié (donc pas un entier entre 1 et n).