bannière du site www.mathmaurer.com

Les instructions itératives

On utilise une boucle lorsqu'on veut répéter un même bloc d'instructions un certain nombre de fois.

I – Pour … allant de … à … faire

Avec ce type de boucle, le nombre d'itérations (répétitions) est connu à l'avance. On utilise donc un compteur qui, une fois atteint une certaine valeur, arrête l'exécution de la boucle. À chaque passage dans la boucle, le compteur est incrémenté (+1) ou décrémenté (−1) selon le cas.

Ajouter POUR … DE … A (instruction AlgoBox)

Ajouter SI...ALORS
Ajouter POUR...DE...A
VARIABLES
a EST_DU_TYPE NOMBRE
i EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
//Initialisation de la variable a à 1
a PREND_LA_VALEUR 1
//La boucle calcule 2 à la puissance 3.
//On doit donc faire le calcul 2 * 2 * 2
//Il faut donc faire 3 tours de boucle
POUR i ALLANT_DE 1 A 3
DEBUT_POUR
a PREND_LA_VALEUR a*2
FIN_POUR
AFFICHER "La valeur de 2 à la puissance 3 est : "
AFFICHER a
FIN_ALGORITHME

En testant l'algorithme en mode pas à pas, on obtient :

#1 Nombres/chaines (ligne 6) -> a:1 | i:0 Entrée dans le bloc DEBUT_POUR/FIN_POUR (ligne 11) #2 Nombres/chaines (ligne 11) -> a:1 | i:1 #3 Nombres/chaines (ligne 12) -> a:2 | i:1 Sortie du bloc DEBUT_POUR/FIN_POUR (ligne 13) Entrée dans le bloc DEBUT_POUR/FIN_POUR (ligne 11) #4 Nombres/chaines (ligne 11) -> a:2 | i:2 #5 Nombres/chaines (ligne 12) -> a:4 | i:2 Sortie du bloc DEBUT_POUR/FIN_POUR (ligne 13) Entrée dans le bloc DEBUT_POUR/FIN_POUR (ligne 11) #6 Nombres/chaines (ligne 11) -> a:4 | i:3 #7 Nombres/chaines (ligne 12) -> a:8 | i:3 Sortie du bloc DEBUT_POUR/FIN_POUR (ligne 13)
Variables
ia
01
12 × 1 = 2
22 × 2 = 4
32 × 4 = 8
***Algorithme lancé en mode pas à pas*** La valeur de 2 à la puissance 3 est : 8 ***Algorithme terminé***

Remarque : Les valeurs entières encadrant le compteur peuvent être des variables :
Pour i allant de variable1 à variable2 faire

II – Tant que … faire

Avec ce type de boucle, on répète l'exécution d'un bloc d'instructions tant qu'une condition préalablement définie est satisfaite. Le test s'effectue en début de boucle, à chaque passage.

Ajouter TANT QUE … (instruction AlgoBox)

Ajouter SI...ALORS
Ajouter POUR...DE...A
Ajouter TANT QUE...
VARIABLES
x EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
//On initialise x à -1 pour entrer pour la condition d'entrée dans la boucle
x PREND_LA_VALEUR -1
TANT_QUE (x<=0) FAIRE
DEBUT_TANT_QUE
AFFICHER "Veuillez entrer un nombre strictement positif"
LIRE x
FIN_TANT_QUE
AFFICHER "La valeur de x est "
AFFICHER x
FIN_ALGORITHME

En testant l'algorithme, on obtient :

***Algorithme lancé*** Veuillez entrer un nombre strictement positif Entrer x : 0 Veuillez entrer un nombre strictement positif Entrer x : -2 Veuillez entrer un nombre strictement positif Entrer x : 1 La valeur de x est 1 ***Algorithme terminé***