0% ont trouvé ce document utile (0 vote)
46 vues21 pages

Chap 4

Ce document décrit les trois types de structures itératives en algorithmique: les boucles Pour, Tant que et Répéter...jusqu'à. Il explique leur syntaxe et donne des exemples d'algorithmes pour chaque type de boucle.

Transféré par

Ayoub Outaik
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 PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
46 vues21 pages

Chap 4

Ce document décrit les trois types de structures itératives en algorithmique: les boucles Pour, Tant que et Répéter...jusqu'à. Il explique leur syntaxe et donne des exemples d'algorithmes pour chaque type de boucle.

Transféré par

Ayoub Outaik
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 PDF, TXT ou lisez en ligne sur Scribd

4.

Les structures
itératives

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021


Les structures itératives
 Les structures itératives (les boucles) permettent de répéter un

bloc d’instructions plusieurs fois.

 On distingue trois types de boucles :

 Les boucles ;

 Les boucles ;

 Les boucles .

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 73


Les structures itératives

• On connait d’avance le nombre de répétions: On


Pour répète les instructions en faisant évoluer un compteur
entre une valeur initiale et une valeur finale

• On ne connait pas d’avance le nombre de répétions:


Tant Que • On répète des instructions tant qu'une certaine condition
est réalisée

Répéter • On ne connait pas d’avance le nombre de répétions:


• On répète des instructions jusqu'à ce qu'une certaine
Jusqu’à condition soit réalisée

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 74


Les structures itératives
La boucle Pour
 Utilisée lorsqu’on connait d’avance le nombre de répétitions
 Syntaxe :
Pour compteur=val_initial à val_final Pas de pas

FinPour

 Compteur : variable permettant de compter le nombre d’itérations.


 val_initial et val_final : sont respectivement la valeur initiale et finale
prises par le compteur. Elles peuvent être des valeurs, des variables, ou des
expressions de même type que le compteur.
 Pas : est la valeur d’augmentation progressive du compteur. Le pas est un
entier qui peut être positif ou négatif. La valeur par défaut du pas est de 1.
Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 75
Les structures itératives
La boucle Pour Début de la
Boucle Pour

Cpt← Val_initial

Pour Cpt=val_initial à val_final Pas de pas


Bloc d’instructions
FinPour Cpt <= Val_final

instructions

Cpt← Cpt+Pas

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 76


Les structures itératives
La boucle Pour
Exemple 1 : Ecrire un algorithme qui calcule et affiche l’indice de
masse corporelle (IMC) de 150 personne.
Indication : l’IMC se calcule en divisant le poids (en kg) par le carré de la taille
(m)
Algorithme IMC
Variables taille, poids, imc : Réel
i : Entier
Début
Pour i=1 à 150 Pas de 1
Ecrire("Entrez le poids de la personne:",i,"en KG")
Lire(poids)
Ecrire("Entrez la taille de la personne:",i,"en mètre")
Lire(taille)
imc ← poids/(taille*taille)
Ecrire("L’IMC de la personne",i,"est:",imc)
FinPour
Fin
Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 7
Les structures itératives
La boucle Pour
Exemple 2 : Ecrire un algorithme qui calcule la factorielle d’un
nombre saisi par l’utilisateur

Algorithme Factorielle
Variables N, i, Fact: Entier
Début
Ecrire (" Saisir un nombre: ")
Lire (N)
Fact ← 1
Pour i=1 à N
Fact ← Fact*i
FinPour
Ecrire ("La factorielle de ", N, " est : ", Fact)
Fin

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 78


Les structures itératives
La boucle Pour
Remarque :

Modifier la valeur du compteur à l'intérieur de la boucle peut :


 Générer une boucle infinie;

 Modifier le nombre d'itérations prévu par la boucle;

Exemple :

Pour i=1 à 5
i ← i–1
Ecrire ("i=",i)
FinPour Boucle infinie

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 79


Les structures itératives
La boucle Pour
Une boucle peut contenir parmi ses instructions une autre
structure itérative. Dans ce cas, on aboutit à des boucles
imbriquées

Exemple :

Sortie :
Pour i=1 à 5
Pour j=1 à i 1
Ecrire (j, " ") 1 2
FinPour 1 2 3
Ecrire ("\n") 1 2 3 4
FinPour 1 2 3 4 5

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 80


Les structures itératives
La boucle Tant que
 Utilisée lorsqu’on ne connait d’avance le nombre de répétitions
 Syntaxe :

Tant que (Condition)

FinTantque

 La condition est évaluée avant chaque itération;


 Si la condition est vraie, on exécute le bloc d’instructions puis, on retourne pour
re-tester la condition. Si elle est vraie, on ré-exécute le bloc d’instructions et
ainsi de suite;
 Si la condition est fausse, on sort de la boucle sans exécuter le bloc
d’instructions.
Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 81
Les structures itératives
La boucle Tant que Début de la
Boucle Tant que

Tant que (Condition) Condition

FinTantque
instructions

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 82


Les structures itératives
La boucle Tant que
Remarque :
 Le bloc d’instructions ne sera jamais exécuté si la condition
est fausse au départ;

 Après un certain nombre d'itérations, le bloc d’instructions doit


changer la valeur de condition de vrai à faux, sinon on obtient
une boucle infinie.
Exemple :
i ← 0
Tant que (i=0)
Ecrire ("Bonjour")
FinTantque Boucle infinie

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 83


Les structures itératives
La boucle Tant que
Exemple : Ecrire un algorithme qui demande à l’utilisateur de
saisir une valeur entre 1 et 10. Si la valeur n’est pas comprise
entre 1 et 10, on redemande la saisie. Sinon l’algorithme affiche le
mot "merci!" et s’arrête.
Algorithme Controle_saisie_V1
Variables n: Réel
Début
Ecrire (" Donnez un nombre entre 1 et 10 ")
Lire (n)
Tant que (n<1 OU n>10)
Ecrire(" Donnez un nombre entre 1 et 10: ")
Lire(n)
FinTantque
Ecrire("Merci!")
Fin

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 84


Les structures itératives
La boucle Répéter…jusqu’à
 Utilisée lorsqu’on ne connait d’avance le nombre de répétitions
 Syntaxe :

Répéter

Jusqu’à (Condition)

 Le bloc d’instructions est exécuté;


 Ensuite la condition est évaluée;
 Si la condition est vraie, on sort de la boucle, sinon si elle est
fausse on ré-exécute le bloc d’instructions, on réévalue la condition
et ainsi de suite.
Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021
85
Les structures itératives
La boucle Répéter…jusqu’à
Début de la Boucle
Répéter…jusqu’à

Répéter
instructions
Jusqu’à (Condition)

Condition

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 86


Les structures itératives
La boucle Répéter…jusqu’à
Remarque :
 Le bloc d’instructions est exécuté au moins une fois ;

 Après un certain nombre d'itérations, le bloc d’instructions doit


changer la valeur de condition de faux à vrai, sinon on obtient
une boucle infinie.

Exemple :
i ← 0
Répéter
i ← i+1
Jusqu’à (i<0) Boucle infinie

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 87


Les structures itératives
La boucle Répéter…jusqu’à
Exemple : Ecrire un algorithme qui demande à l’utilisateur de
saisir une valeur entre 1 et 10. Si la valeur n’est pas comprise
entre 1 et 10, on redemande la saisie. Sinon l’algorithme affiche le
mot "merci!" et s’arrête.

Algorithme Controle_saisie_V2
Variables n: Réel
Début
Répéter
Ecrire(" Donnez un nombre entre 1 et 10: ")
Lire(n)
Jusqu’à (n>=1 ET n<=10)
Ecrire("Merci!")
Fin

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 88


Les structures itératives
Tant que vs Répéter…jusqu’à
Tant que Répéter…jusqu’à

 La condition est vérifiée  La condition est vérifiée


avant chaque exécution du après chaque exécution du
bloc d’instructions; bloc d’instructions;

 Le bloc d’instructions peut  Le bloc d’instructions est


ne pas être exécuté. exécuté au moins une fois.

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 89


Les structures itératives
Les boucles : choix?
Nombre
d’itérations
connu

La boucle
Bloc d’instructions Pour
exécuté au moins
une fois

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

Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 90


Les structures itératives
Exercices
• Écrire un algorithme qui détermine si un nombre saisi par l’utilisateur
est premier ou non
Algorithme Premier
Variables i, N, compt : entier
Début
Ecrire(" donner un entier ")
Lire(N)
compt ← 0
Pour i=1 à N
Si (N mod i = 0) Alors
compt ← compt + 1
FinSi
FinPour
Si (compt = 2) Alors
Ecrire(" Nombre premier ")
Sinon
Ecrire(" Nombre non premier ")
FinSi
Fin
Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 91
Les structures itératives
Exercices
• Ecrire un algorithme qui demande successivement des
nombres à l’utilisateur, et qui calcule leur moyenne. La saisie
des nombres s’arrête lorsque l’utilisateur entre un zéro :
Algorithme ex5cours
Variables N, S : Réel
Début
S ← 0
i ← 0
Répéter
Ecrire(" Donnez un Nombre")
Lire(N)
S ← S +N
i ← i + 1
Jusqu’à (N = 0)
Ecrire(" La Moyenne est: " , S/(i-1))

Fin
Pr. Brahim ALIBOUCH ALGORITHMIQUE 1 SMI2 ( FS - Agadir ) / A.U : 2020-2021 92

Vous aimerez peut-être aussi