Skip to main content

Welcome to a Grasp lesson

Create a free account to keep studying and create your own study path.

Lesson 13

Les boucles "Pour" : Répéter des actions prédéfinies

Recommended resources

Bonjour ! Dans la leçon précédente, nous avons vu comment utiliser les structures conditionnelles pour choisir entre différentes formules de calcul, par exemple pour appliquer une remise. Nous avons ainsi appris à guider notre algorithme sur des chemins différents.

Introduction

Aujourd'hui, nous abordons un nouveau défi fondamental en algorithmique : la répétition. Imaginez que vous deviez calculer le solde d'un compte épargne après 120 versements mensuels, ou afficher les 1000 premiers multiples d'un nombre. Écrire 120 ou 1000 fois la même instruction serait non seulement fastidieux, mais aussi une source quasi certaine d'erreurs.

Pour résoudre ce problème, nous allons explorer les structures de contrôle répétitives, plus connues sous le nom de boucles. L'objectif de cette leçon est d'apprendre à utiliser la première et la plus simple de ces structures : la boucle Pour. Elle est conçue spécifiquement pour une tâche : répéter une action un nombre de fois que nous connaissons à l'avance. C'est un pas essentiel vers votre but de maîtriser la logique pour écrire du code propre et efficace.


1. Pourquoi utiliser une boucle ?

Le meilleur moyen de comprendre l'intérêt d'une boucle est de voir la différence qu'elle apporte. Imaginons un problème simple : un calcul qui se répète chaque mois.

Algorithmes _4_ Boucle Pour

Ce document illustre parfaitement le passage d'un algorithme répétitif et lourd à une version élégante utilisant une boucle Pour. Lisez l'exemple pour saisir l'avantage immédiat de cette nouvelle structure.

Lisez la première page, de "I. Exemple 1" jusqu'à la présentation de l'algorithme avec la boucle Pour. Concentrez-vous sur la comparaison entre l'algorithme en "langage naturel" qui répète les instructions et sa version optimisée avec Pour i variant de 1 à 36....

Comme vous l'avez vu, au lieu d'écrire 36 fois les mêmes deux lignes de calcul, nous pouvons simplement dire à l'algorithme : "Répète ces instructions 36 fois". La boucle Pour est l'outil qui nous permet de donner cet ordre de manière structurée.

L'algorithme devient non seulement plus court et plus lisible, mais aussi beaucoup plus facile à maintenir. Si demain les parents décident de verser de l'argent pendant 48 mois au lieu de 36, il suffira de changer un seul chiffre !


2. L'anatomie d'une boucle Pour

Maintenant que nous avons vu son utilité, décortiquons comment fonctionne une boucle Pour.

Syntaxe générale

La structure formelle d'une boucle Pour en pseudo-code est la suivante :

Pour [compteur] variant de [valeur_de_début] à [valeur_de_fin] Faire
  // Bloc d'instructions à répéter
  Instruction 1
  Instruction 2
  ...
FinPour
  • Pour ... FinPour : Ces mots-clés délimitent le début et la fin de la boucle. Toutes les instructions situées entre eux seront répétées.
  • compteur : C'est une variable (souvent nommée i, j ou k par convention, pour "itération" ou "index") qui va suivre le nombre de tours effectués.
  • variant de [début] à [fin] : Cette partie initialise le compteur à la valeur_de_début. La boucle s'exécutera, puis le compteur sera automatiquement augmenté de 1. Ce processus se répète jusqu'à ce que le compteur atteigne la valeur_de_fin. Une fois le tour pour la valeur finale terminé, la boucle s'arrête.

Visualiser le mécanisme

Un organigramme est un excellent moyen de visualiser le flux d'exécution d'une boucle. L'image suivante décompose une boucle simple qui écrit une phrase quatre fois.

Comparaison de Représentations de Boucles
Cette image montre la mécanique interne d'une boucle. "Représentation 2" est particulièrement utile : on y voit l'initialisation du compteur (X=0), l'action (Écrire), l'incrémentation (X=X+1) et la condition de continuation (X<4).

Ce schéma met en évidence les quatre étapes clés que l'ordinateur exécute :

  1. Initialisation : Le compteur est mis à sa valeur de départ (avant même le premier tour).
  2. Condition : L'algorithme vérifie si le compteur a dépassé sa valeur finale.
  3. Exécution : Si la condition est respectée, le bloc d'instructions est exécuté.
  4. Modification : Le compteur est incrémenté. L'algorithme retourne ensuite à l'étape 2.

Voici une vision plus formelle de ce cycle :

Organigramme d'une Boucle 'Pour'
Cet organigramme représente le cycle de vie standard d'une boucle `Pour`. Le programme entre dans la boucle, exécute les instructions et modifie le compteur, puis re-vérifie la condition jusqu'à ce qu'elle devienne fausse, ce qui provoque la sortie de la boucle.

3. Tracer l'exécution "à la main"

Votre préférence pour la pratique est une excellente habitude. L'une des meilleures façons de maîtriser les boucles est de simuler leur exécution manuellement, en suivant l'évolution des variables à chaque "tour". C'est ce qu'on appelle un tableau de suivi des variables (ou "trace").

Reprenons l'exemple de l'épargne, mais cette fois-ci pour un nombre de mois N choisi par l'utilisateur.

Algorithmes _4_ Boucle Pour

Cet extrait montre comment tracer une boucle Pour dont le nombre d'itérations dépend d'une variable. L'exemple est concret et le tableau de suivi est un modèle parfait pour vos propres exercices.

Lisez la section "II. Exemple 2", en vous concentrant sur la section "4°) Fonctionnement de l’algorithme". Analysez attentivement le tableau qui montre l'évolution des variables S et M pour N=4.

Exercice guidé : à vous de tracer !

Maintenant, mettons cela en pratique. Voici un algorithme simple. Essayez de prédire ce qu'il affichera si l'utilisateur saisit n = 3. Prenez un papier et un crayon et créez votre propre tableau de suivi pour les variables i et u.

Variables : n, i : entiers
            u : réel
Entrée : Saisir n
Initialisation : u prend la valeur 0
Traitement :
  Pour i variant de 1 à n Faire
    u prend la valeur u + 1/i
  FinPour
Sortie : Afficher u

Une fois que vous avez trouvé une valeur finale pour u, comparez votre raisonnement avec la solution détaillée.

Algorithmes _4_ Boucle Pour

Cette ressource contient la correction détaillée de l'exercice. Utilisez-la pour vérifier votre travail et, surtout, pour comprendre la méthode de traçage pas à pas.

Lisez la section "Solution" de l'"Exercice guidé" (page 12). Comparez le tableau d'évolution des variables avec celui que vous avez créé. Assurez-vous de bien comprendre comment la valeur de u est mise à jour à chaque itération en utilisant sa valeur précédente.

Si l'utilisateur saisit n=3, l'algorithme affiche 11/6 (environ 1.833). Le tableau de suivi est la clé pour arriver à ce résultat sans erreur.


4. Votre premier algorithme avec une boucle Pour

Après avoir analysé et tracé, il est temps de créer. Voici un exercice classique qui est une application directe de la boucle Pour.

Problème : Écrire un algorithme qui affiche la table de multiplication par 7, de 7 x 1 jusqu'à 7 x 9.

Votre mission :

  1. Identifiez l'action qui doit être répétée.
  2. Déterminez combien de fois elle doit être répétée.
  3. Utilisez une boucle Pour pour structurer votre algorithme.

Prenez quelques minutes pour écrire cet algorithme en pseudo-code.


Solution et analyse

Voici une solution possible :

Algorithme TableDeSept
  Variables
    i, resultat : Entiers
  Début
    Pour i variant de 1 à 9 Faire
      resultat ← 7 * i
      Ecrire("7 x ", i, " = ", resultat)
    FinPour
  Fin

Cet algorithme est un exemple parfait de l'utilisation d'une boucle Pour :

  • Le nombre de répétitions est connu à l'avance (9 fois).
  • Le compteur i est non seulement utilisé pour compter les tours, mais il participe aussi directement au calcul (7 * i).

L'exercice 1 du document Algorithmes _4_ Boucle Pour (section 8) propose ce même problème avec une analyse détaillée (section 9) que vous pouvez consulter pour plus de détails.


Conclusion

Félicitations ! Vous venez d'ajouter un outil extrêmement puissant à votre arsenal d'algorithmicien. La capacité à automatiser des tâches répétitives est au cœur de la programmation.

Points clés à retenir :

  • La boucle Pour est utilisée pour répéter une ou plusieurs instructions un nombre de fois prédéterminé.
  • Elle s'articule autour d'un compteur qui évolue entre une valeur de début et une valeur de fin.
  • La syntaxe de base est Pour [compteur] variant de [début] à [fin] Faire ... FinPour.
  • Le tableau de suivi des variables est une méthode essentielle pour comprendre et vérifier le comportement d'une boucle.

Et après ?

La boucle Pour est parfaite quand on sait d'avance combien de tours faire (ex: "pour les 12 mois de l'année", "pour les 10 premiers clients"). Mais que se passe-t-il si le nombre de répétitions est inconnu ? Par exemple, "répéter tant que l'utilisateur n'a pas saisi un mot de passe correct" ou "répéter tant qu'il reste des articles en stock".

Dans la prochaine leçon, nous découvrirons la boucle Tant que, conçue précisément pour ces situations où la répétition dépend d'une condition et non d'un comptage.