0% ont trouvé ce document utile (0 vote)
156 vues16 pages

Comprendre les Boucles en Programmation

Transféré par

susu world
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
156 vues16 pages

Comprendre les Boucles en Programmation

Transféré par

susu world
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd

Définitions Introduction générale

Notion d’algorithme

Instructions itératives : les boucles

• Les boucles servent à répéter l'exécution d'un groupe d'instructions un certain


nombre de fois

• On distingue trois sortes de boucles en langages de programmation :

 Les boucles tant que : on y répète des instructions tant qu'une certaine
condition est réalisée

 Les boucles jusqu'à : on y répète des instructions jusqu'à ce qu'une certaine


condition soit réalisée

 Les boucles pour ou avec compteur : on y répète des instructions en faisant


évoluer un compteur (variable particulière) entre une valeur initiale et une
valeur finale

1
Définitions Introduction générale
Notion d’algorithme

La boucle Tant que

TantQue (condition)
instructions
FinTantQue

la condition (dite condition de contrôle de la boucle) est évaluée avant chaque itération

 si la condition est vraie, on exécute les instructions (corps de la boucle), puis, on retourne
tester la condition. Si elle est encore vraie, on répète l'exécution, …

 si la condition est fausse, on sort de la boucle et on exécute l'instruction qui est après
FinTantQue

 Il est possible que les instructions à répéter ne soient jamais exécutées.

2
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles


Boucle Tant que : exemple

 Le nombre d'itérations dans une boucle TantQue n'est pas connu au moment
d'entrée dans la boucle. Il dépend de l'évolution de la valeur de la condition
 Une des instructions du corps de la boucle doit absolument changer la valeur de
la condition de vrai à faux (après un certain nombre d'itérations), sinon le
programme va tourner indéfiniment

Attention aux boucles infinies

Exemple de boucle infinie Correction


i 1 i 1
Tant Que i>0 Tant Que i<20
i i+1 i i+1
Fin Tant Que Fin Tant Que

3
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

Boucle Tant que : exemple

On veut afficher tous les nombres inferieurs à 1000.

4
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles


La boucle Répéter … jusqu’à …

Répéter
instructions
Jusqu'à condition

 Condition est évaluée après chaque itération

 les instructions entre Répéter et jusqu’à sont exécutées au moins une fois et leur
exécution est répétée jusqu’à ce que la condition soit vraie (tant qu'elle est
fausse)

5
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

Boucle Répéter jusqu’à : exemple


 Un algorithme qui détermine le premier nombre entier N tel que la somme de 1
à N dépasse strictement 100 (version avec répéter jusqu'à)

6
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

Différences entre les boucles Tant que et Répéter jusqu'à :


 la séquence d'instructions est exécutée au moins une fois dans la boucle Répéter
jusqu'à, alors qu'elle peut ne pas être exécutée dans le cas du Tant que.

 la séquence d'instructions est exécutée si la condition est vraie pour Tant que et
si la condition est fausse pour Répéter jusqu'à.

 Dans les deux cas, la séquence d'instructions doit nécessairement faire évoluer la
condition, faute de quoi on obtient une boucle infinie

7
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

La boucle Pour
Pour <compteur> allant de <initiale> à <finale> par pas de <valeur du pas>
instructions
FinPour

8
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

Les boucles Pour


 Remarque : le nombre d'itérations dans une boucle Pour est connu avant le
début de la boucle

 Compteur est une variable de type entier (ou caractère). Elle doit être déclarée

 Pas est un entier qui peut être positif ou négatif. Pas peut ne pas être mentionné,
car par défaut sa valeur est égal à 1. Dans ce cas, le nombre d'itérations est égal à
finale - initiale+ 1

 Initiale et finale peuvent être des valeurs, des variables définies avant le début
de la boucle ou des expressions de même type que compteur

9
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

Déroulement des boucles Pour


1) La valeur initiale est affectée à la variable compteur
2) On compare la valeur du compteur et la valeur de finale :

a) Si la valeur du compteur est > à la valeur finale dans le cas d'un pas positif (ou
si compteur est < à finale pour un pas négatif), on sort de la boucle et on
continue avec l'instruction qui suit FinPour

b) Si compteur est <= à finale dans le cas d'un pas positif (ou si compteur est >= à
finale pour un pas négatif), instructions seront exécutées
 Ensuite, la valeur du compteur est incrémentée de la valeur du pas si pas est
positif (ou décrémenté si pas est négatif)
 On recommence l'étape 2 : La comparaison entre compteur et finale est de
nouveau effectuée, et ainsi de suite …

10
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

Boucle Pour : exemple


Calcul de x à la puissance n où x est un réel non nul et n un entier positif ou nul

11
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

Boucle Pour : remarques


 Il faut éviter de modifier la valeur du compteur (et de finale) à l'intérieur de la
boucle. En effet, une telle action :
• perturbe le nombre d'itérations prévu par la boucle Pour
• rend difficile la lecture de l'algorithme
• présente le risque d'aboutir à une boucle infinie

Exemple : Pour i allant de 1 à 5


i ←i -1
écrire(" i = ", i)
Finpour

12
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

Lien entre Pour et TantQue

 La boucle Pour est un cas particulier de Tant Que (cas où le nombre d'itérations
est connu et fixé) . Tout ce qu'on peut écrire avec Pour peut être remplacé avec
TantQue (la réciproque est fausse)

Pour compteur allant de initiale à finale par pas valeur du pas


instructions
FinPour

peut être remplacé par : compteur ← initiale


TantQue compteur <= finale
(cas d'un pas positif)
instructions
compteur ← compteur+pas
FinTantQue

13
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

Lien entre Pour et TantQue: exemple 1


 Calcul de x à la puissance n où x est un réel non nul et n un entier positif ou nul
(forme avec TantQue)

14
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

Boucles imbriquées
Les instructions d'une boucle peuvent être des instructions itératives. Dans ce cas,
on aboutit à des boucles imbriquées

Exemple:
Exécution
Pour i allant de 1 à 5
OK
Pour j allant de 1 à i
OOk
écrire("O" )
OOOK
FinPour
OOOOK
écrire("K")
OOOOOK
FinPour

15
Définitions Introduction générale
Notion d’algorithme

Instructions itératives : les boucles

Choix d'un type de boucle


 Si on peut déterminer le nombre d'itérations avant l'exécution de la boucle, il est
plus naturel d'utiliser la boucle Pour

 S'il n'est pas possible de connaître le nombre d'itérations avant l'exécution de la


boucle, on fera appel à l'une des boucles TantQue ou répéter jusqu'à

 Pour le choix entre TantQue et jusqu'à :

• Si on doit tester la condition de contrôle avant de commencer les instructions


de la boucle, on utilisera TantQue

• Si la valeur de la condition de contrôle dépend d'une première exécution des


instructions de la boucle, on utilisera répéter jusqu'à

16

Vous aimerez peut-être aussi