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

Chapitre 2

Transféré par

akram.sarda78
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)
34 vues23 pages

Chapitre 2

Transféré par

akram.sarda78
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

Algorithmique

Tronc commun

Pr. Nabila ZRIRA & Pr. Hamza TOULNI

Année universitaire: 2024-2025


Chapitre II
Structures de contrôle
Instructions conditionnelles

C’est une structure logique qui permet d’exécuter ou non un bloc d’instructions selon la valeur VRAI ou FAUX d’une
expression logique. Il y a deux formes possibles pour une condition (appelée aussi test).

Si (condition logique) alors


Si (condition logique) alors
bloc d’instructions 1
bloc d’instructions
Sinon
Finsi
bloc d’instructions 2

Finsi

3
Instructions conditionnelles
Il est possible d’imbriquer plusieurs conditions dans le même algorithme.

Si Condition1 Alors
bloc d’instructions 1
Sinon
Si Condition2 Alors
bloc d’instructions 2
Sinon
...
Sinon
Si Condition N Alors
bloc d’instructions N
Sinon
bloc d’instructions
Finsi
Finsi
...
Finsi
Finsi
4
Instructions conditionnelles
Exemple: un programme devant donner l’état de l’eau selon sa température. Il doit pouvoir choisir entre trois réponses
possibles (solide, liquide ou gazeuse).
Algorithme Température
Variable T en entier
Début
Ecrire ("Donner la température de l’eau :")
Lire (T)
Si ( T <=0) Alors
Ecrire ("C’est de la glace")
Finsi
Si ( T > 0 ET T < 100) Alors
Ecrire ("C’est du liquide")
Finsi
Si ( T >= 100) Alors
Ecrire ("C’est de la vapeur")
Finsi
Fin 5
Instructions conditionnelles

Donner la température de l’eau:


Algorithme Température 60
Variable T en Entier
C’est du liquide
Début
Ecrire ("Donner la température de l’eau:")
Lire (T)
Si (T <= 0) alors
Ecrire ("C’est de la glace")
Sinon
Si (T < 100) alors
Ecrire ("C’est du liquide")
Sinon
Ecrire ("C’est de la vapeur") T: 60
Finsi
Finsi
Fin

RAM
6
Instructions conditionnelles
Algorithme Température
Variable T en Entier Donner la température de l’eau:
Variables A, B en Booléen 85
Début C’est du liquide.
Ecrire ("Donner la température de l’eau :")
Lire (T)
A  T <= 0
B  T < 100
Si (A) Alors
Ecrire ("C’est de la glace")
Sinon
Si (B) Alors T: 85
Ecrire ("C’est du liquide")
A: FAUX
Sinon
Ecrire ("C’est de la vapeur") B: VRAI
Finsi
RAM
Finsi
7
Fin
Instructions conditionnelles
Dans le cas où l’expression logique des tests imbriqués est réduite au test de la valeur d’une variable on peut utiliser la
condition suite:

Cas où Variable vaut :


Valeur 1) bloc d’instructions 1
Valeur 2) bloc d’instructions 2

Valeur N) bloc d’instructions N
Autrement) bloc d’instructions
Fincas

8
Instructions conditionnelles
Exemple : algorithme qui affiche le jour de la semaine Entrez le numéro d’un jour de la
Algorithme Jour de la semaine semaine:
7
Variable X en Entier
Dimanche
Début
Ecrire ("Entrez le numéro d’un jour de la semaine: ")
Lire (X)
Cas où X vaut :
1) Ecrire ("Lundi")
2) Ecrire ("Mardi")
3) Ecrire ("Mercredi")
4) Ecrire ("Jeudi")
5) Ecrire ("Vendredi")
6) Ecrire ("Samedi")
7) Ecrire ("Dimanche")
Autrement) Ecrire ("Ce numéro ne correspond à aucun jour de la semaine")
Fincas
9
Fin
Instructions conditionnelles
Exemple : algorithme qui affiche le jour de la semaine Entrez le numéro d’un jour de la
Algorithme Jour de la semaine semaine:
10
Variable X en Entier
Ce numéro ne correspond à aucun
Début jour de la semaine
Ecrire ("Entrez le numéro d’un jour de la semaine:")
Lire (X)
Cas où X vaut :
1) Ecrire ("Lundi")
2) Ecrire ("Mardi")
3) Ecrire ("Mercredi")
4) Ecrire ("Jeudi")
5) Ecrire ("Vendredi")
6) Ecrire ("Samedi")
7) Ecrire ("Dimanche")
Autrement) Ecrire ("Ce numéro ne correspond à aucun jour de la semaine")
Fincas
10
Fin
Instructions répétitives
La boucle

L’instruction de répétition, appelée boucle, permet d’exécuter plusieurs fois consécutives un même bloc
d’instructions. La répétition s’effectue tant que la valeur de l’expression booléenne est égale à Vrai.

Il existe trois types de boucles :


- Tantque . . . Faire
- Faire . . . Tantque
- Pour . . . Faire

11
Instructions répétitives
La boucle Tantque

Tantque condition Faire


Bloc d’instructions
FinTantque

Règles :
– La condition doit être une expression booléenne.
– Pour que la boucle se termine, il est nécessaire que le bloc d’instructions modifie la condition.

Évaluation :
La condition est évaluée. Si elle vaut FAUX alors la boucle se termine et l’exécution se poursuit avec l’instruction qui
suit FinTanque. Si elle vaut VRAI alors la séquence d’instructions est exécutée et la condition est de nouveau évaluée.
12
Instructions répétitives
La boucle Tantque
Donner un entier positif :
5
Algorithme Calcul de S=1+2+3+4+…+N La somme est : 15
Variables N, I , S en Entier
Début
Ecrire ("Donner un entier positif :")
Lire (N)
I 1
S0
Tantque ( I <= N ) faire

SS+I
I I+1
FinTantque N: 5
Ecrire ("La somme est :", S) I: 6
Fin
S: 15

RAM
13
Instructions répétitives
La boucle Faire . . . Tantque

Faire
Bloc d’instructions
Tantque Condition

Remarques :
✓ La condition n’est évaluée qu’après l’exécution du bloc d’instructions;
✓ La séquence est exécutée au moins une fois ;
✓ La condition doit être modifiée par la séquence.
14
Instructions répétitives
La boucle Faire . . . Tantque
Donner un entier positif :
5
Algorithme Calcul de S=1+2+3+4+…+N La somme est : 15
Variables N, I , S en Entier
Début
Ecrire ("Donner un entier positif :")
Lire (N)
I 1
S0
Faire
SS+I
I I+1
Tantque ( I <= N )
Ecrire ("La somme est :", S) N: 5
Fin
I: 1 2 3 4 5 6

S: 0 1 3 6 10 15

RAM
15
Instructions répétitives
La boucle Pour
Pour Compteur  Val_Initiale à Val_finale Pas Val_Pas faire
Bloc d’instructions
FinPour

La variable Compteur prend alors successivement chacune des valeurs de l’intervalle [Val_Initiale - Val_finale] dans
l’ordre indiqué et pour chaque valeur, la séquence est exécutée.

Remarques :
✓ Cette structure est utilisée lorsqu’on connaît à l’avance le nombre d’itérations à faire.
✓ Si Val_Pas vaut 1 on peut l’omettre.
✓ Nous pouvons imbriquer plusieurs boucles.

16
Instructions répétitives
La boucle Pour
Donner un entier positif
5
Algorithme Calcul de S=1+2+3+4+…+N La somme est : 15
Variables N, I , S en Entier
Début
Ecrire ("Donner un entier positif :")
Lire (N)
S0
Pour I  1 à N faire

SS+I
FinPour
Ecrire ("La somme est :", S)
Fin N: 5

I: 6

S: 15

RAM
17
Instructions répétitives
Boucles imbriquées

Algorithme Calcul de S=1!+2!+3!+4!+…+N! N=4


Variables N, P, I , J, S en Entier
I=1 I=2 I=3 I=4
Début
Ecrire ("Donner un entier positif :")
Lire (N) S = 0 + 1 + 2 + 6 + 24 = 33
S0
Pour I  1 à N faire

P1
J1
Tantque J =< I faire
S = 1! + 2! + 3! + 4! = 33
P  P*J
J  J+1
FinTantque
SS+P
FinPour
Ecrire ("La somme est :", S)
Fin
18
Exercices
Les habitants d’une ville paient l’impôt selon les règles suivantes :

✓ Les hommes de plus de 20 ans paient l’impôt


✓ Les femmes paient l’impôt si elles ont entre 18 et 35 ans
✓ Les autres ne paient pas d’impôt

Le programme demandera donc l’âge et le genre d’un habitant, et se prononcera donc ensuite sur le fait que
l’habitant est imposable.

19
Exercices
Ecrire un algorithme permettant d’afficher la saison en introduisant le numéro du mois.

20
Exercices
Ecrire un algorithme qui lit un entier puis affiche sa table de multiplication.

Exemple : Cas du nombre 5

Table de 5 :
5x1=5
5 x 2 = 10
5 x 3 = 15

5 x 10 = 50

21
Exercices
Une ville a pour population actuelle X habitants.
Ecrire un algorithme qui donne sa population dans cinq ans, si on considère que le taux de croissance annuel
est de 2%.

22
Exercices
Ecrire un algorithme qui demande à l’utilisateur un nombre pair. Si le nombre saisi n’est pas pair l’algorithme
doit demander à l’utilisateur une nouvelle saisie.

23

Vous aimerez peut-être aussi