Une boucle "pour" sert à répéter une action.
On distingue deux types de boucle :
Boucle "pour" : on connaît à l'avance le nombre de répétitions de l'action à exécuter.
Boucle "tant que" (qui sera vue plus tard) : le nombre de répétitions est conditionné
par l'évolution de l'état de certaines variables du programme.
Un premier exemple : la table de multiplication du 8.
Pour k allant de 1 à 10 :
afficher k*8
fin_pour
Un second exemple : calcul de la somme des premiers entiers naturels.
Calculons la somme S = 1+2+3+...+n des n premiers entiers positifs :
n=15
s=0 # initialisation de la variable s qui contiendra la somme
pour j prenant les valeurs 1, 2, 3, ..., n faire
s=s+j
fin_pour
Afficher : La somme des entiers compris entre 1 et {valeur de n} est égale à {valeur de s}.
Modifions ce programme pour que toutes les sommes intermédiaires soient affichées :
Les boucles avec pas distinct de 1.
Comment afficher les entiers impairs entre 3 et 21 ?
La variable de boucle (i dans le code ci-dessous) est initialisée à la valeur 3.
Ensuite, la valeur de la variable est augmentée de deux à chaque tour de boucle ( i += 2).
Les boucles avec pas négatif.
Comment afficher les entiers en ordre décroissant ?
let
L'utilisation de let à la place de var pour déclarer la variable i d'indice de boucle
permet de limiter la portée de la variable i au corps de la boucle.
Comparer les scripts qui suivent :
Dans ce premier cas, on a déclaré la variable i
en dehors de la boucle, cette variable existe donc encore à la sortie de
boucle.
Ce second cas est plus étonnant (surtout lorsqu'on a déjà pratiqué
certains langages de programmation) : la variable est encore
connue en sortie de boucle alors que sa déclaration est faite dans la boucle.
let permet de "corriger" ce problème : on aimerait que cette variable i qui n'est utile que lors
des itérations de boucle disparaisse hors de la boucle pour ne pas risquer de venir "polluer" le reste du code
(et également accessoirement
dans l'espoir de libérer de la mémoire).
let permet donc de limiter la portée de la variable i à la boucle (ou plus généralement
au bloc dans lequel on a déclaré une variable avec le mot clef let).