0% ont trouvé ce document utile (0 vote)
28 vues23 pages

Boucles en Algorithmique : Types et Exemples

Le document présente le module d'Algorithmique 1 de l'Université Ibn Zohr, axé sur les instructions itératives, notamment les boucles. Il décrit les différents types de boucles en programmation, comme les boucles 'Pour', 'Tant Que' et 'Répéter Jusqu’à', ainsi que leur syntaxe et leurs applications à travers des exemples. Le document souligne également l'importance de choisir le type de boucle approprié en fonction des besoins de l'algorithme.

Transféré par

Imene Imene
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)
28 vues23 pages

Boucles en Algorithmique : Types et Exemples

Le document présente le module d'Algorithmique 1 de l'Université Ibn Zohr, axé sur les instructions itératives, notamment les boucles. Il décrit les différents types de boucles en programmation, comme les boucles 'Pour', 'Tant Que' et 'Répéter Jusqu’à', ainsi que leur syntaxe et leurs applications à travers des exemples. Le document souligne également l'importance de choisir le type de boucle approprié en fonction des besoins de l'algorithme.

Transféré par

Imene Imene
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

Université Ibn Zohr

Faculté des Sciences Appliquées


Génie Informatique et Systèmes Intelligents
Tronc Commun : Informatique Appliquée - S1

Module 113

Algorithmique 1

Présenté par :
Pr. FATEH & Pr. AHED
Année Universitaire: 2024-2025
Plan

1 Instructions itératives : les boucles

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 2 / 23


Instructions itératives : les boucles

Plan

1 Instructions itératives : les boucles

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 3 / 23


Instructions itératives : les boucles

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 :
1− Les boucles tant que : on y répète des instructions tant qu’une certaine
condition est réalisée
2− Les boucles jusqu’à : on y répète des instructions jusqu’à ce qu’une
certaine condition soit réalisée
3− 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 .

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 4 / 23


Instructions itératives : les boucles

Boucle Pour

Cette structure exprime la répétions d’un traitement un nombre fois. Sa


syntaxe :
Pour compteur allant de initiale à finale par pas valeur du pas faire
instructions ;
FinPour

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 5 / 23


Instructions itératives : les boucles

Boucle Pour

1 Remarque : le nombre d’itérations dans une boucle Pour est connu


avant le début de la boucle
2 Compteur est une variable de type entier (ou caractère). Elle doit être
déclarée
3 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
4 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

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 6 / 23


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 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 de 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 .....

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 7 / 23


Instructions itératives : les boucles

Boucle Pour
Exemple

Calcul de la somme des n premiers entiers positif.


Solution
Algorithme Somme_ Entiers
Variables n,s,i : Entier
Début
Écrire(" Entrez la valeur n :") ;
Lire(n) ;
s←0
Pour i allant de 1 à n faire ;
s ← s+i
Finpour
Écrire(La somme des n premiers entiers positifs est : ", s)
Fin

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 8 / 23


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
Version 1
Algorithme Puissance
Variables n, i : Entier
x, puiss : Réel
Début
Écrire(" Entrez respectivement les valeurs de x et n") ;
Lire(x,n) ;
puiss ← 1
Pour i allant de 1 à n faire ;
puiss ← puiss * x
Finpour
Écrire(x, " à la puissance ", n, " est égal à ", puiss) ;
Fin

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 9 / 23


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 (version 2 avec un pas négatif)
Version 2
Algorithme Puissance
Variables n, i : Entier
x, puiss : Réel
Début
Écrire(" Entrez respectivement les valeurs de x et n") ;
Lire(x,n) ;
puiss ← 1
Pour i allant de n à 1 pas -1 faire ;
puiss ← puiss * x
Finpour
Écrire(x, " à la puissance ", n, " est égal à ", puiss) ;
Fin

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 10 / 23


Instructions itératives : les boucles

Boucle Pour
Remarque

▶ 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 faire
i ← i-1
Écrire(" i = ",i) ;
Finpour

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 11 / 23


Instructions itératives : les boucles

Les itérations indéterministes...


Les boucles tant que

Cette forme de boucle vérifie avant chaque itération la validité d’une


condition :
Reboucle si la condition est vraie
S’arrêt et sort de la boucle si la condition devient fausse.
La syntaxe d’utilisation est donnée ci-après :

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 12 / 23


Instructions itératives : les boucles

Les itérations indéterministes...


Les boucles tant que : remarques

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 condition
Une des instructions du corps de la boucle doit absolument changer la
valeur de condition de vrai à faux (après un certain nombre
d’itérations), sinon le programme tourne indéfiniment
Attention aux boucles infinies (Exemple) :
i ← 2;
TantQue (i > 0) faire
i ← i+1 ; (attention aux erreurs de frappe : + au lieu de -)
FinTantQue

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 13 / 23


Instructions itératives : les boucles

Les boucles tant que : Exemple


On veut écrire un algorithme qui demande un nombre entier positif n puis
calcul la somme s des entiers compris entre 0 et n
Solution
Algorithme Somme_ Entiers
Variables n,s,i : Entier
Début
Écrire(" Entrez la valeur de n :") ;
Lire(n) ;
Si n < 0 alors
Écrire("Le nombre n doit être positif")
Lire(n) ;
Sinon
s←0
i←0
TantQue (i <= n) faire
s ← s+i
i ← i+1
FinTantQue
Écrire("La somme s vaut : ", s)
Finsi
Fin
Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 14 / 23
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 Tant Que(la réciproque est fausse)

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 15 / 23


Instructions itératives : les boucles

Lien entre Pour et TantQue : exemple

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


ou nul (version avec TantQue)
Solution
Algorithme Puissance
Variables n, i : Entier
x, puiss : Réel
Début
Écrire(" Entrez respectivement les valeurs de x et n") ;
Lire(x,n) ;
puiss ← 1
i←0
TantQue (i <= n) faire
puiss ← puiss * x
i ← i+1
FinTantQue
Écrire(x, " à la puissance ", n, " est égal à ", puiss) ;
Fin

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 16 / 23


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

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 17 / 23


Instructions itératives : les boucles

Les itérations indéterministes...


Répéter Jusqu’à

La syntaxe de l’instruction Répéter Jusqu’à s’écrit :

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 condition soit vrai
(tant qu’elle est fausse)
Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 18 / 23
Instructions itératives : les boucles

Les itérations indéterministes...


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’à)
Solution
Algorithme Somme_ Entiers
Variables som,i : Entier
Début
som ← 0
i←0
Répéter
i ← i+1
som ← som+i
Jusqu’à (som > 100)
Écrire(" La valeur cherchée est N= ", i)
Fin
Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 19 / 23
Instructions itératives : les boucles

Comparaison boucles
Tant Que & Répéter Jusqu’à

1 Boucle Tant que


condition vérifiée avant chaque exécution du traitement ;
le traitement peut donc ne pas être exécuté ;

2 Boucle Répéter . . . Jusqu’à


condition vérifiée après chaque exécution du traitement ;
le traitement est exécuté au moins une fois ;

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 20 / 23


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 répéter jusqu’à :
1 Si on doit tester la condition de contrôle avant de commencer
les instructions de la boucle, on utilisera TantQue
2 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’à

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 21 / 23


Instructions itératives : les boucles

Les itérations indéterministes...


Exercice

Écrire un algorithme qui demande à l’utilisateur un nombre n compris entre


1 et 3 jusqu’à ce que la réponse convienne.
Correction
Algorithme JeuDeNombres
Variables n : Entier
Début
n←0
TantQue (n < 1 ou n > 3) faire
Écrire("Donner un nombre entre 1 et 3") ;
Lire(n) ;
FinTantQue
Écrire("Bonne réponse.") ;
Fin

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 22 / 23


Instructions itératives : les boucles

Travaux Dirigés N°3

Pr. FATEH & Pr. AHED (FSA) M113 2024-2025 23 / 23

Vous aimerez peut-être aussi