TP4 Les Boucles
TP4 Les Boucles
TP4 Les Boucles
Zatout
Les boucles
Les boucles en algorithmique sont utilisées lorsqu’on veut répéter un bloc d’instructions jusqu’à la
vérification d’une certaine condition. Le langage C, comme en algorithmique, offre 3 types de
boucles qui sont : la boucle ‘for’, la boucle ‘while’ et la boucle ‘do .. while’.
1 La boucle ‘For’
Algorithmique Langage C
Pour <idf_compteur> de <BI> à <BS> for (<initialisation>;<condition>;<mise à jour>)
Faire {
//bloc d’instructions à exécuter ; //bloc d’instructions à exécuter ;
Fait ; }
2 La boucle ‘While’
Algorithmique Langage C
Tant que (<condition>) while(<condition>)
Faire {
//bloc d’instructions à exécuter ; //bloc d’instructions à exécuter ;
Fait ; }
Comme la boucle ‘for’, l’évaluation de la condition est faite avant l’exécution du bloc
d’instructions. L’évolution de l’évaluation de la condition doit se faire dans de corps de la boucle
afin d’éviter une boucle infinie.
On appelle une boucle infinie, une boucle dont sa condition reste toujours vraie durant l’exécution.
Exemple : while(1){//bloc d’instructions à exécuter ;} est une boucle infinie.
1
Section 2 : G2, G4 / Section 4 : G1, G3 ,G4 C. Zatout
Le bloc d’instructions dans la boucle ‘do .. while’ est exécuté au moins une fois. Contrairement aux
boucles précédentes, l’évaluation de la condition est effectuée après l’exécution du bloc
d’instructions. Le bloc est exécuté tant que la condition est vérifiée.
Exemples
La somme des N premiers nombres :
Remarque : il est plus juste d’initialiser i dans la boucle ‘for’ et la boucle ‘while’ à 1. Le résultat
reste toujours vrai, mais on améliore la performance en termes de temps d’exécution : on évite
l’exécution inutile de l’instruction ‘s+=i’ lorsque ‘i=0’ (s+=0). Toutefois, l’initialisation de i à 0
dans le cas de la boucle ‘do .. while’ est obligatoire !
2
Section 2 : G2, G4 / Section 4 : G1, G3 ,G4 C. Zatout
3
Section 2 : G2, G4 / Section 4 : G1, G3 ,G4 C. Zatout
Exécution :
4
Section 2 : G2, G4 / Section 4 : G1, G3 ,G4 C. Zatout
5
Section 2 : G2, G4 / Section 4 : G1, G3 ,G4 C. Zatout