Université Sidi Mohamed Ben Abdellah
Ecole Supérieure de Technologie de Fès
Filière Génie Electrique
1ère Année
Boucles
(Les structures itératives)
Cours Algorithmique et Programmation C
Avant-propos
« Le vrai problème n’est pas de savoir si les machines
pensent, mais de savoir si les hommes pensent » -
B.F.Skinner
2
EST Fès Algorithmique et Programmation
Plan
Motivation
Structures de base (Pour…)
Structures de base (Tant que…)
Structures de base (Répéter)
3
EST Fès Algorithmique et Programmation
Motivation
Egalement appelées les structures répétitives:
Ils permettent de faire executer plusieurs fois certains
phases de programme, sans qu’il soit nécessaire à chaque
fois de réécrire les instructions correspondantes.
4
EST Fès Algorithmique et Programmation
Problématiques
On voudrait mettre en place ce qu’on appelle un contrôle
de saisie, afin de vérifier que les données entrées au clavier
correspondent bien à celles attendues par l’algorithme.
On voudrait afficher à l’écran tout les nombres premiers
inférieurs à 1000.
On voudrait imprimer à l’écran 10 000 le message suivant
« Hello World »!
5
EST Fès Algorithmique et Programmation
Structure de base (Pour…)
Schéma Pour
– Valeur initiale de l’indice d’itération
– Valeur finale de l’indice d’itération
– Variation de l’indice d’itération (le pas)
• Test d’évaluation : A PRIORI (variables)
Pour i <- valeurDébut à valeurFin pas 2
…
i suivant
FinPour
6
EST Fès Algorithmique et Programmation
Structure de base (Tant que …)
Schéma Tant que
– Initialisation de la variable de contrôle avant
– Variation manuelle de la variable de contrôle
• Test d’évaluation : A PRIORI (variables)
A <- Vrai
Tantque (A)
…..
A <- Faux (dans une conditionnelle)
….
FinTantQue
7
EST Fès Algorithmique et Programmation
Structure de base (Répéter)
Schéma Répéter
– Initialisation de la variable de contrôle
– Série d’actions
– Variation manuelle de la variable de contrôle
• Test d’évaluation : A POSTERIORI
A <- Vrai
Répéter
…..
A <- Faux (dans une conditionnelle)
….
TantQue (A)
8
EST Fès Algorithmique et Programmation
Remarque
Les structures TantQue sont employées dans les situations
où l’on doit procéder à un traitement systématique sur les
éléments d’un ensemble dont on ne connaît pas d’avance la
quantité.
Les structures Pour sont employées dans les situations où
l’on doit procéder à un traitement systématique sur les
éléments d’un ensemble dont le programmeur connaît
d’avance la quantité.
9
EST Fès Algorithmique et Programmation
Remarques
La structure « Pour … Suivant » n’est pas du tout
indispensable ; on pourrait fort bien programmer toutes
les situations de boucle uniquement avec un « Tant Que ».
Le seul intérêt du « Pour » est d’épargner au programmeur,
la gestion manuelle la progression de la variable qui lui
sert de compteur (on parle d’incrémentation).
La structure « Pour … Suivant » est un cas particulier de
TantQue : celui où le programmeur peut dénombrer à
l’avance le nombre de tours de boucles nécessaires.
10
EST Fès Algorithmique et Programmation
Conclusion
Pour ne pas tomber dans l’écueil des boucles infinies:
– Éviter de manipuler, au sein d’une boucle Pour, la variable qui sert
de compteur à cette boucle.
– Éviter d’écrire une structure TantQue dans laquelle la condition ne
prend jamais la valeur FAUX.
11
EST Fès Algorithmique et Programmation
Exercices
Exercice 4.1
Exercice 4.2
Exercice 4.3
Exercice 4.4
Exercice 4.5
Exercice 4.6
12
EST Fès Algorithmique et Programmation C