Algorithmique
et structure de données
Abir MHENNI
Dr. Ing. en Informatique
[email protected]
Filière : 1ère année Licence IOT
2023-2024 1
Chapitre 4
Structures itératives
2
3
Introduction
• On peut exécuter une action ou un ensemble d’actions non pas infiniment mais
un certain nombre de fois : c’est la notion de boucles.
4
La structure « Pour ….. faire…….Finpour » 4
• Syntaxe • Vc : compteur de type entier
• Vi et vf : valeur initiale et valeur finale de vc
Pour vc de vi à vf faire • Traitement : action ou séquence d’actions à répéter
(vf-vi +1) fois.
Traitement • La boucle Pour est utilisée lorsque le nombre
Finpour d’itération est connu à l’avance.
• Vc reçoit une valeur initiale vi pour la première fois,
il ne doit pas être modifié par une action de
traitement à l’intérieur de la boucle.
• Vc est incrémenté automatiquement par 1 à chaque
exécution du corps de la boucle Pour. Cette valeur
d’incrémentation est appelée le pas de la boucle.
• L ‘exécution de la boucle finit lorsque vc atteind vf.
5
La structure « Pour ….. faire…….Finpour »
• Schéma d’exécution d’une boucle « Pour »
6
La structure « Pour ….. faire…….Finpour »
• Exemple :
Pour i de 1 à 5 faire
Ecrire (i * 100)
Fin pour
• Résultat 100 200 300 400 500
• Remarques :
• Une boucle peut être exécutée une ou plusieurs fois.
• Si le pas est différent de 1, il faut ajouter l’option ( pas = constante)
7
La structure « Pour ….. faire…….Finpour »
• Exemple
• Faire le même exercice pour avoir un affichage descendant.
• Résultat : 500 400 300 200 100
Pour i de 5 à 1 (pas = -1) faire
Ecrire (i * 100)
Fin pour
8
La structure « Pour ….. faire…….Finpour »
• Exemple 1
• Ecrire un algorithme qui lit un entier n qu’on suppose positif puis affiche tous ses
diviseurs.
• Exemple 2
• Ecrire un algorithme qui permet de calculer et d’afficher la somme des nombres
premiers inférieurs à nb (nb est saisi à partir du clavier).
9
La structure « Répéter …. Jusqu’à » 9
• Syntaxe • Condition : condition d’arrêt et de sortie de la
boucle
Répéter • ‐ Traitement : action ou ensemble d’actions à
exécuter tant que la condition n’est pas
Traitement vérifiée, dés qu’elle soit vérifiée, l’exécution
Jusqu’à (condition) du traitement s’arrête.
• ‐ Le nombre de répétition n’est pas connu à
l’avance.
• ‐ Le traitement est exécuté au moins une fois
quelque soit le résultat de la condition.
• ‐ La condition doit être initialisée avant le
début de la boucle et doit être modifiée à
l’intérieur de la boucle.
10
La structure « Répéter …. Jusqu’à »
• Schéma d’exécution d’une boucle « Répéter »
Faux
11
La structure « Répéter …. Jusqu’à »
• Exemple :
• Répéter l’exemple précédent permettant de multiplier les chiffres de 1 à 5 par
100 en utilisant la boucle « Répéter ».
• Résultat 100 200 300 400 500
Répéter
Ecrire ( i *100)
i← i +1
jusqu’à ( i > 5)
12
La structure « Répéter …. Jusqu’à »
• Exemple 1
• Ecrire un algorithme qui permet de calculer la somme des nb premiers entiers en
utilisant la boucle répéter jusqu’à
• Exemple 2
• Ecrire un algorithme qui permet de calculer la factorielle d’un entier n donné (on
suppose que n est un entier positif)
La structure 13
« Tantque……. Faire…….. Fintantque »
• Syntaxe • Condition : condition de maintien de la
Tantque (condition) faire boucle.
Traitement • ‐ Traitement : Action ou ensemble d’actions
à exécuter tant que la condition est vérifiée.
Fintantque • ‐ Le traitement est exécuté tant que la
condition est vérifiée sinon on sort de la
boucle.
• ‐ Si la condition n’est pas vraie dés la
première exécution, la boucle ne sera
jamais exécutée (0 fois).
• ‐ Le nombre de répétition n’est pas connu à
l’avance.
• ‐ La condition doit être initialisée avant la
boucle et modifiée à l’intérieur de la boucle.
La structure 14
« Tantque……. Faire…….. Fintantque »
• Schéma d’exécution d’une boucle « Tant que »
La structure 15
« Tantque……. Faire…….. Fintantque »
• Exemple :
• Répéter l’exemple précédent permettant de multiplier les chiffres de 1 à 5 par
100 en utilisant la boucle « Tant que ».
• Résultat 100 200 300 400 500
i←1
tantque (i≤5)
Ecrire ( i *100)
i← i +1
Fintantque
La structure 16
« Tantque……. Faire…….. Fintantque »
• Exemples
• Reprendre les exercices précédents en utilisant la boucle tant que.
• Exemple 1
• Ecrire un algorithme qui permet de calculer la somme des nb premiers entiers en
utilisant la boucle « tant que »
• Exemple 2
• Ecrire un algorithme qui permet de calculer la factorielle d’un entier n donné (on
suppose que n est un entier positif)
To be Continued …
17