Vous êtes sur la page 1sur 13

Faculté des sciences économiques, commerciales et de gestion

Enseignant de la matière : Hammouda Mohamed


Module : Informatique 3
Année : 2ème sciences commerciales
Spécialité : Sciences commerciales
N° cours : 7 Les structures répétitives ( Boucle Pour)
E_mail : m_hammouda@esi.dz

1. Principe :

En algorithmique, nous devons souvent répéter une instruction plusieurs fois. Une solution simple
consiste à réécrire cette instruction plusieurs fois.

Par exemple, si on veut afficher le message ‘Bonjour’ 5 fois, on écrit l’algorithme suivant :

L’instruction qui nous permet d’afficher le mot ‘Bonjour’ est l’instruction Ecrire (‘Bonjour’). Elle est
répétée 5 fois.

Maintenant, si on veut afficher le message ‘Bonjour’ 100 fois, nous devons réécrire l’instruction
Ecrire (‘Bonjour’) 100 fois. C’est long, lourd et peu pratique.

Pour cela, nous allons utiliser une instruction qui permet de répéter une instruction (ou un bloc ou
ensemble d’instructions) plusieurs fois. On appelle cette instruction la boucle Pour .

2. La structure Pour i 1 à n Faire

Cette structure est une BOUCLE ITERATIVE ; elle consiste à répéter un certain traitement un
nombre de fois fixé et connu à l’avance. En algorithmique, on traduit cette structure itérative à
l’aide des instructions :

Pour i [valeur initiale] à [valeur finale] Pas 1 Faire


Instructions ;
FinPour ;
La variable i est un compteur qui augmente automatiquement de 1. Sa valeur initiale VI est 1. Sa
valeur finale VF est n. Son pas est 1, c'est-à-dire que le compteur avance par 1.

Exemple 1 : Ecrire un algorithme qui calcule le produit a*b avec la boucle Pour

a*b = a*a*a*…….*a = b*b*b*………*b


b fois a fois

2.1.1 .
Algorithme Produit ;
Variables a, b, i, résultat : entier ;
Début
Lire (a,b) ;
Résultat 0 ;
Pour i 1 à b Faire
résultat résultat + a ;
FinPour ;
Ecrire (résultat) ;
Fin.

2.1.2. Organigramme de l’algorithme produit :


2.1.3. Déroulement de l’algorithme produit : a=2 ; b=3

2.1.4. Traduire l’algorithme Produit en Pascal

Program Produit ;
Var a, b, i, résultat : integer ;
begin
read (a,b) ;
Résultat := 0 ;
For i := 1 To b do résultat := résultat + a ;
write (résultat) ;
end.
Chapitre 6 : Les structures répétitives
Enseignant de la matière : Hammouda Mohamed
Module : Informatique 3
Année : 2ème sciences commerciales
Spécialité : Sciences commerciales
N° cours : 8 Les structures répétitives ( Boucle Pour exercices)
E_mail : m_hammouda@esi.dz

Exemple 2 : un algorithme qui affiche les nombres de 1 à 100

Algorithme Affichage ;
Variables i :entier ;
Debut
Pour i 1 à 100 faire
Ecrire (i) ;
FinPour ;
Fin.

Exemple 3 : afficher les diviseurs (‫ )قواسم‬d’un nombre ‘n’


2.3.1. Organigramme de l’algorithme ‘diviseurs’ :

2.3.2. Déroulement de l’algorithme ‘diviseurs’ : Pour n=4


Chapitre 6 : Les structures répétitives
Enseignant de la matière : Hammouda Mohamed
Module : Informatique 3
Année : 2ème sciences commerciales
Spécialité : Sciences commerciales
N° cours : 9 Les structures répétitives ( Boucle Tant que)
E_mail : m_hammouda@esi.dz

3. La boucle Tant que :

Comme pour la boucle pour, on utilise la boucle tant que lorsque nous devons répéter un bloc
d’instructions. La différence est simple : ici, nous ne connaissons pas le nombre de répétitions à
effectuer. Nous avons seulement une condition qui va arrêter le calcul.

Tant que (condition) Faire


Instructions ;
FinTantque ;

Exemple 4 : Ecrire un algorithme qui calcule le produit a*b avec une boucle Tant que (Transformer
la boucle Pour de l’exemple 1 en boucle Tant que)
Exemple 5 : Ecrire un algorithme qui calcule le quotient de a/b

Traduire l’algorithme quotient en Pascal

Program quotient ;
Var a, b, i : integer ;
Begin
Read (a,b);
While a >= b do
Begin
a := a – b;
i := i + 1;
End;
Write (i);
End.
Chapitre 6 : Les structures répétitives
Enseignant de la matière : Hammouda Mohamed
Module : Informatique 3
Année : 2ème sciences commerciales
Spécialité : Sciences commerciales
N° cours : 10 Les structures répétitives ( Boucle Tant que exercices)
E_mail : m_hammouda@esi.dz

Exemple 6 : Ecrire un algorithme qui calcule an avec une boucle tant que

Exemple 7 : Transformer la boucle Tant que de l’exemple 6 en boucle Pour


Chapitre 6 : Les structures répétitives
Enseignant de la matière : Hammouda Mohamed
Module : Informatique 3
Année : 2ème sciences commerciales
Spécialité : Sciences commerciales
N° cours : 11 Les structures répétitives ( Boucle répéter….jusqu’à)
E_mail : m_hammouda@esi.dz

4. La boucle Répéter ….. Jusqu’à

Répéter

Instructions ;

Jusqu'à (condition = vrai)

Comme pour les boucles Pour et Tant que, on utilise la boucle Répéter lorsque nous devons
répéter un bloc d’instructions. On exécute d’abord le bloc d’instructions. Ensuite, on vérifie la
condition. Si la condition est fausse on exécute encore le bloc d’instructions et on vérifie la
condition. On sort de la boucle lorsque la condition devienne vraie.

Remarque : la vérification de la condition s’effectue après les instructions. Celles-ci sont donc
exécutées au moins une fois.

Exemple 1 : Ecrire un algorithme qui demande successivement 10 nombres à l’utilisateur, et qui lui
dise ensuite quel était le plus grand parmi ces 10 nombres

Entrez le nombre numéro 1 : 7 Entrez le nombre numéro 2 : 24 .......etc. Entrez le nombre numéro 10
: 13 Le plus grand de ces nombres est : 24

Algorithme plus_grand ;
Variables I, N, PG : entier ;
Début
I=1 ;
Écrire ("entrer la valeur de N ") ;
Lire (N) ;
PG = N ;
Répéter
Lire (N) ;
Si (PG ≤ N) alors PG = N ;
Finsi ;
I=I+1 ;
Jusqu'à (I = 10) ;
Ecrire (‘La valeur la plus grand est ’, PG) ;
Fin
Exemple 2 : Ecrire un algorithme qui calcule le produit des entiers a*b en utilisant la boucle
Répéter

Algorithme Produit ;
Variables a,b, i, résultat : entier ;
Début
Lire (a,b) ;
i 1 ; résultat 0 ;
Répéter
Résultat résultat + a ;
i i + 1 ;
Jusqu’à i > b ;
Ecrire (résultat) ;
Fin.

Exemple 2 en Pascal :

Program Produit ;
Var a,b, i, résultat : integer ;
Begin
read (a,b) ;
i := 1 ; résultat := 0 ;
Repeat
Résultat := résultat + a ;
i := i + 1 ;
Until i > b ;
Write (résultat) ;
End.
Enseignant de la matière : Hammouda Mohamed
Module : Informatique 3
Année : 2ème sciences commerciales
Spécialité : Sciences commerciales
N° cours : 12 (Tableaux et matrices)

E_mail : m_hammouda@esi.dz

Les types structurés se sont des types construits à partir des types simples (réel, entier, caractère, booléen)
ou bien d’autre types structurés.

Un type structuré se caractérise par :

- Type de ses composants.

- La méthode de structuration.

a) Type Tableau :

Supposons une classe de 5 étudiants. Chaque étudiant a une note finale. On voudrait écrire un

algorithme qui affiche toutes les notes supérieures à la moyenne de la classe.

Solution :

Algorithme notes_sup_à_la_moyenne ;

Variables note1, note2, note3, note4, note5, moy: Réel ;i : entier ;

début

Lire (note1, note2, note3, note4, note5) ;

moy  (note1 + note2 + note3 + note4 + note5) / 5 ;

si (note1 ≥ moy) Ecrire (note1) ; fsi ;

si (note2 ≥ moy) Ecrire (note2) ; fsi ;

si (note3 ≥ moy) Ecrire (note3) ; fsi ;

si (note4 ≥ moy) Ecrire (note4) ; fsi ;

si (note5 ≥ moy) Ecrire (note5) ; fsi ;

Fin.

L’algorithme n’est valide que pour une classe de 5 étudiants.


 Si on utilise une classe de 100 étudiants, déclarer 100 variables, 100 sélection, etc. !!!

 On associe plutôt un seul nom à l’ensemble des variables des notes d’étudiants (NOTE) et
l’emploi d’un indice (i) qui permet de repérer un élément quelconque de l’ensemble.
Note [1] Note [2] Note [3] Note [4] Note [5]
11 13 10 14 12
Définition :

Un tableau est constitué d’un nombre fixe de composants ou (éléments) de même


type. Chaque composant est directement accessible au moyen d’un indice tel que le
premier indice commence de 1.

1. Tableau à une dimension ou unidimensionnel (Vecteur) :

Comme toute variable simple, une variable de type tableau doit être déclarée.
Syntaxe : Identificateur : tableau [Taille] type ;

Tel que :

Identificateur : représente le nom de tableau.

Taille : le nombre des éléments (composants) qui contiendra le tableau.

Type : Le type des éléments réel, entier, caractère, booléen.

Exemple :

T : tableau
[20] entier ;
V : tableau
[100] réel ;

T : tableau [50] caractère ;

B : tableau [10] booléen ;


Exemple : Ecrire la déclaration correspondante aux nombres de jours de l’année
2011

Solution :

Mois : Tableau [12] entier ;

Mois[1] Mois[1] Mois[1] Mois[1] Mois[1] Mois[1] Mois[1] Mois[1] Mois[1] Mois[1] Mois[1] Mois[1]
31 28 31 30 31 30 31 31 30 31 30 31
C’est un tableau d’entiers de 12 éléments (12 cases) ou chaque case représente le nombre
de jours de mois correspondant à l’indice (position).

- Déclaration : Mois : tableau [12] entier ;


éme
- Donc pour avoir les jours de 5 mois (Mai) donc on accède à l’élément Mois [5].

- Lecture d’un élément : Lire (Mois [1]) ;

- Modification d’un élément : Mois [1] 31 ;

- Ecriture d’un élément : Ecrire (Mois [1]) ;

Exercice : Dérouler l’algorithme suivant pour le tableau T

Algorithme Tableau1 ;
Variables T : Tableau[5] entier , i:entier ;

Début
Pour i ← 1 à 5 Faire
  T[i] ← i * i
FinPour ;
Fin

Vous aimerez peut-être aussi