0% ont trouvé ce document utile (0 vote)
66 vues7 pages

Structures de contrôle conditionnelles

Ce document décrit les structures algorithmiques de contrôle conditionnelles, y compris les structures conditionnelles simples, la structure conditionnelle généralisée et la structure conditionnelle à choix multiples. Il contient des exemples de programmes en algorithme et en Pascal pour illustrer ces structures.

Transféré par

Benacer Leila
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)
66 vues7 pages

Structures de contrôle conditionnelles

Ce document décrit les structures algorithmiques de contrôle conditionnelles, y compris les structures conditionnelles simples, la structure conditionnelle généralisée et la structure conditionnelle à choix multiples. Il contient des exemples de programmes en algorithme et en Pascal pour illustrer ces structures.

Transféré par

Benacer Leila
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

Les structures algorithmiques de contrôle

LYCEE Moknine
DISCIPLINE : PROFESSEUR : Mr Grich Mourad
PROGRAMMATION

LES STRUCTURES ALGORITHMIQUES


DE CONTROLES
A. LES STRUCTURES DE CONTROLES CONDITIONNELLES :
I. INTRODUCTION
Une structure est dite conditionnelle si l’exécution de son action dépend d’une ou de plusieurs
conditions.
Ces structures sont de trois types :
• Les structures conditionnelles simples,
• La structure conditionnelle généralisée,
• La structure conditionnelle à choix multiples.
II. LES STRUCTURES CONDITIONNELLES SIMPLES :
1) Forme simple réduite :
Activité :
Ecrire un programme nommé EQUAT1 qui permet de résoudre l’équation a * x + b =0 lorsqu’elle est
permise, et dans le cas contraire ne faire aucune action.
Analyse du problème : Tableau de déclaration des objets
Résultat : Ecrire (x) Objet Type / nature
Traitements : Si a ≠ 0 alors x -b /a a réel
Données : a = donnée b réel
b = donnée x réel

Algorithme & Pascal :


Algorithme Pascal

0) début EQUAT1 Program EQUAT1 ;


1) Ecrire ("introduire le 1 coefficient ") Uses wincrt ;
lire (a) Var a, b, x : real ;
2) Ecrire ("introduire le 2 coefficient ") Begin
lire (b) Write (‘ introduire le 1 coefficient ‘) ;
3) Si a <> 0 Alors x - b / a Read (a) ;
Fin si Write ( ‘ introduire le 2 coefficient ‘) ;
4) Ecrire (" la solution est = ", x) Read (b) ;
5) Fin EQUAT 1 If a <> 0 Then x := - b / a ;
Write (‘ la solution est = ‘, x) ;
End .

Remarques :
Page 1 sur 7
Les structures algorithmiques de contrôle

- Ré Exécuter votre programme en mettant a = 0. Que remarquez-vous ? pourquoi cette solution ?


- Rajouter « Begin » et « End ; » entre l’affectation et la lecture. Que remarquez-vous ?
a) Définition :
Une structure conditionnelle est dite simple réduite si on restreint à l’exécution d’un traitement quand
une condition donnée est VRAIE
Faux
Condition

Vrai
Action

b) Syntaxe :
Pascal
Algorithme Cas d’un trait. composé d’une Cas d’un trait. composé d’une
seule instruction suite d’instructions
[ ] SI condition ALORS IF condition THEN IF condition THEN
Trait Instr ; BEGIN
Instruction1 ;
FINSI …………..;
Instruction n ;
END ;
2) Forme simple complète :
Activité 2 :
Reprendre l’activité 1 mais en affichant cette fois « la solution est le vide » lorsque l’opération n’est pas
permise (a = 0, on considéra b ≠ 0)
Quelles sont les modifications à faire dans le programme ?
Les instructions de saisie restent inchangées mais l’affichage va être modifié (notion de bloc
d’instructions)
Solution activité 2 :
Algorithme Pascal

0) début EQUAT1 Program EQUAT1 ;


1) Ecrire (" introduire le 1 coefficient ") Uses wincrt ;
lire (a) Var a, b, x : real ;
2) Ecrire (" introduire le 2 coefficient ") Begin
lire (b) Write (‘ introduire le 1 coefficient ‘) ;
3) Si a ≠ 0 Alors Read (a) ;
x -b/a Write (‘ introduire le 2 coefficient ‘) ;
Ecrire (" la solution est = ", x) Read (b) ;
Si non If a <> 0 Then
Ecrire (" la solution est le vide") Begin
Fin si x := - b / a ;
4) Fin EQUAT 1 Write (‘la solution est = ‘, x) ;
End
Else Write(‘la solution est le vide’) ;
End.

a) Définition :

Page 2 sur 7
Les structures algorithmiques de contrôle

Une structure conditionnelle est dite simple complète si selon le résultat de la condition, on exécute soit
l’action 1 soit l’action 2.

Condition Action 2
Faux
Vrai
Action 1

b) Syntaxe :
Pascal
Analyse / Algorithme Cas d’un trait. composé d’une Cas d’un trait. composé d’une
seule instruction suite d’instructions
[ ] SI condition ALORS IF condition THEN IF condition ELSE
Trait 1 Instr 1 THEN BEGIN
SINON ELSE BEGIN Instr 1 ;
Trait 2 Inst 2 ; Instr 1 ; ……..;
……..; Instr m ;
FINSI Instr n END;
END

III. La structure conditionnelle généralisée:


Activité 3 :
Reprendre l’activité 2 mais en discutant cette fois tous les cas mathématiquement.
Solution activité 3 :
Algorithme Pascal
0) début EQUAT1 Program EQUAT1 ;
1) Ecrire ( " introduire le 1 coefficient "), lire (a) Uses wincrt ;
2) Ecrire ( " introduire le 2 coefficient "),lire (b) Var a, b, x : real ;
3) Si a ≠ 0 Alors Begin
x -b/a Write ( ‘ introduire le 1 coefficient ‘) ; Read (a) ;
Ecrire ( " la solution est = ", x) Write ( ‘ introduire le 2 coefficient ‘) ; Read (b) ;
Si non If a <> 0 Then
Si b = 0 Alors Begin
Ecrire ( " la solution est IR") x := - b / a ;
Si non Write ( ‘ la solution est = ‘, x) ;
Ecrire ( " la solution est le vide") End
Fin si Else If b = 0 Then
4) Fin EQUAT 1 Write (‘ la solution est IR’)
Else
Write (‘ la solution est le vide’) ;
End .

Page 3 sur 7
Les structures algorithmiques de contrôle

a) Définition :

Faux Faux Faux


Cond 1 Cond 2 Cond n-1 Action n
Vrai Vrai Vrai

Action 1 Action 2 Action n-1

b) Syntaxe :
Analyse / Algorithme Pascal

[ ] SI cond 1 ALORS Trait 1 IF cond 1 THEN Trait 1


SINON SI cond 2 ALORS Trait 2 ELSE IF cond 2 THEN Trait 2
……………………………. …………………………….
SINON SI cond n-1 ALORS Trait n-1 ELSE IF cond n-1 THEN Trait n-1
SINON Trait n ELSE Trait n ;
FINSI

IV. La structure conditionnelle à choix multiples :


Activité 4 :
Écrire un programme qui permet de saisir un entier d’un seul chiffre puis afficher sa nature (zéro, pair ou
impair) sans utiliser la fonction MODE
Solution 1 :
Algorithme
0) Début nature
1) Ecrire ( " introduire un chiffre : "), lire (x)
2) Si x = 0 Alors Ecrire ( " chiffre zéro ")
Si non
Si (x = 1) ou (x = 3) ou (x = 5) ou (x = 7) ou (x = 9) Alors
Ecrire ( " chiffre impair ")
Si non si (x = 2) ou (x = 4) ou (x = 6) ou (x = 8) alors
Ecrire ( " chiffre pair")
Si non Ecrire ( " n’est pas un chiffre")
FIN si
3) Fin nature
On peut résoudre ce programme en utilisant une nouvelle forme de structure conditionnelle : structures à
choix multiples.
Analyse du problème :
Résultat : solution
Traitement : Selon x Faire
0 : Ecrire (" chiffre zéro ")
Page 4 sur 7
Les structures algorithmiques de contrôle

1, 3, 5, 7, 9 : Ecrire (" chiffre impair ")


2, 4, 6, 8 : Ecrire (" chiffre pair")
Si non Ecrire (" n’est pas un chiffre")
Fin Selon
Données : x = donnée (" introduire un chiffre : ")
Algorithme

0) Début nature
1) Ecrire (" introduire un chiffre : "), lire (x)
2) Selon x Faire
0 : Ecrire (" chiffre zéro ")
1, 3, 5, 7, 9 : Ecrire (" chiffre impair ")
2, 4, 6, 8 : Ecrire (" chiffre pair")
Si non Ecrire (" n’est pas un chiffre")
Fin Selon
3) Fin nature

Cette structure permet de faire un choix parmi plusieurs possibilités


Le choix du traitement à effectuer dépend de la valeur que prendra le sélecteur (x est un sélecteur dans
l’exemple)
Ce sélecteur est une variable qui est comparée à une série de valeurs
En cas d’égalité l’instruction qui lui est associée sera exécutée, les autres ne seront pas exécutées
Cette structure évite l’utilisation d’une longue structure conditionnelle généralisée et permet une meilleure
lisibilité de la solution.
a) Syntaxe :

Pascal
Analyse / Algorithme Cas d’un trait. composé Cas du trait 1. composé
d’une seule instruction d’une suite d’instructions
CASE sélecteur OF
[ ] SELON sélecteur FAIRE CASE sélecteur OF
V 1 : Begin
V 1 : trait 1 V 1 : Instr 1 ; trait 1 ;
V 2 : trait 2 V 2 : Instr 2 ; End ;
…………… …………… ; V 2 : Instr 2 ;
V n : trait n V n : Instr n …………… ;
SINON Trait n+1 ELSE Trait n+1 ; V n : Instr n
ELSE Trait n+1 ;
FIN SELON END ; END ;

Remarques:
Sélecteur : doit être de type scalaire (entier, caractère)
V : peut être Une seule valeur, exp : 8 ou "a"
Une liste de valeurs de même type, exp : 2, 5, 10 ou "k", "s", "p", "w"
Un intervalle, exp : 5..40 ou "f".."r"
B. LES STRUCTURES DE CONTROLES ITERATIVES :
I. INTRODUCTION :
Il est souvent nécessaire d’exécuter plusieurs fois une ou plusieurs instructions, non pas indéfiniment
mais un certain nombre de fois, pas forcement connu d’avance. C’est la notion très importante de BOUCLE.
Les boucles sont un des éléments fondamentaux des langages de programmation. Elles donnent une
grande puissance de calcul en exécutant, un grand nombre de fois, un nombre d’instructions données.
On distingue :
Page 5 sur 7
Les structures algorithmiques de contrôle

Itérative complète
Itérative à condition d’arrêt
II. ITERATIVE COMPLETE :
Activité :
1. Quelles sont les caractéristiques d’une structure de contrôle itérative complète ?
2. quelle est la forme générale de cette structure ?
a) Définition :
Une structure de contrôle itérative est dite complète si le nombre de répétition est connu d’avance. Cette
structure est caractérisée par :
• L’initialisation automatique du compteur à une valeur initiale (Vi)
• L’incrémentation de 1 (décrémentation de -1) du compteur à chaque répétition
• Vérification du compteur pour qu’il ne dépasse pas la valeur finale (Vf)

b) Syntaxe :
Pascal
Algorithme Cas d’un traitement composé Cas d’un traitement composé
d’une seule instruction d’une suite d’instructions
For compteur := Vi To Vf Do For compteur := Vi To Vf Do
[ ] POUR compteur DE Vi A Vf Faire Instr ; Begin
Instr 1 ;
traitement à répéter …….. ;
Instr n ;
FIN POUR End ;
Remarque : Si le pas est de (-1) la syntaxe en pascal devient : For compteur := Vi Downto Vf Do

Application : Les moyennes d’une classe sont saisies dans un tableau T de n éléments. On se propose de
calculer et d’afficher la moyenne de la classe. Ecrire un programme qui remplit T, calcule et affiche la moyenne
de la classe.
III. ITERATIVE A CONDITION D’ARRET :
Une structure itérative est dite à condition d’arrêt si le nombre de répétition n’est pas connu d’avance,
mais il dépend d’une condition.
On distingue deux types :
Boucle Répéter ……. Jusqu’à
Boucle Tant que …… Faire
III.I. La structure Répéter …. Jusqu'à :
Activité :
1. Quelles sont les caractéristiques d’une structure de contrôle itérative à condition d’arrêt de
type Répéter …. Jusqu’a ?
2. quelle est la forme générale de cette structure ?
a) Définition :
Une structure itérative est dite à condition d’arrêt de type « Répéter … Jusqu'à » si le nombre de
répétition est inconnu d’avance et le nombre minimal d’exécution est égale à 1. Cette structure est caractérisée
par :
• Une condition qui contrôle la répétition du traitement, qu’est une expression booléenne
• Si l’évaluation de la condition est varie la boucle s’arrête, mais si elle est fausse la
condition sera évaluée après l’exécution du traitement Le nombre minimale
d’exécution de l’instruction est égal à 1
b) Syntaxe :

Page 6 sur 7
Les structures algorithmiques de contrôle

Algorithme Pascal

[ ] Répéter Repeat
Traitement Traitement ;
Jusqu’à condition Until condition ;

III.II. La structure Tant que …. Faire :


Activité :
1. Quelles sont les caractéristiques d’une structure de contrôle itérative à condition d’arrêt de
type Tant que …. Faire ?
2. quelle est la forme générale de cette structure ?

a) Définition :
Une structure itérative est dite à condition d’arrêt de type « Tant que … Faire » si le nombre de
répétition est inconnu d’avance et le nombre minimal d’exécution est égale à 0.
b) Syntaxe :

Pascal
Algorithme Cas d’un trait. composé Cas du traitement à répéter
d’une seule instruction composé d’une suite d’instructions
While condition Do
[ ] Tant Que condition Faire While condition Do Begin
Instr ; Instr 1;
Traitement ……. ;
Instr n ;
Fin Tant Que End ;

Application 1: Ecrire un programme qui saisit un tableau T de n entier compris entre 1 et 26 qui
représentent des ordres alphabétiques. Le programme affichera le mot composé des lettres qui correspondent à
ces ordres en majuscules.
Exemple : Pour n = 4 et T : 2 9 5 14 Le programme affichera : "Le mot associé est : BIEN"
B I E N

Application 2: Ecrire un programme qui permet de saisir une suite d’entier et de calculer leur somme à
chaque saisie. Enfin afficher cette somme. La liste d’entier se termine par la valeur -1.
Application 3: Ecrire un programme qui permet de saisir deux entiers m et n puis calculer et afficher le
PGCD de ces deux entiers en utilisant la méthode de la différence.

Page 7 sur 7

Vous aimerez peut-être aussi