-->

les structures de Contrôle conditionnelles


 

LEÇON N°1 : La structure de contrôle conditionnelle simple

I/ INTRODUCTION

Nous avons vu en 3éme année que les structures de contrôle conditionnelles permettent à un programme de modifier son traitement en fonction d’une ou plusieurs conditions.
On distingue trois types de structures de contrôle conditionnelles :
: la structure conditionnelle simple,
: la structure conditionnelle généralisée,
: la structure conditionnelle à choix.

II/ LA FORME REDUITE

1°) Définition
Une structure de contrôle conditionnelle est dite simple réduite lorsque le traitement dépend d'une condition. Si la condition est évaluée à vrai le traitement est exécuté.
2°) Syntaxe et vocabulaire
Au niveau de l'analyse
Au niveau de l'algorithme
Au niveau de Pascal
[ séquences d’initialisation] Si condition Alors
Instruction 1
Instruction 2
FinSi
Si condition Alors Instruction 1
Instruction 2
FinSi
…..;
If condition Then begin Instruction 1 ;
Instruction 2 ;
End ;
III/ LA FORME ALTERNATIVE
1°) Définition
Une structure de contrôle conditionnelle est dite ALTERNATIVE lorsque le traitement dépend d'une condition à deux états. Si la condition est évaluée à vrai le premier traitement est exécuté, la condition est évaluée à FAUX le traitement 2 est exécuté

2°) Syntaxe et vocabulaire
Au niveau de l'analyse
Au niveau de l'algorithme
Au niveau de Pascal
[ séquences d’initialisation]
Si condition Alors Traitement 1 Sinon   Traitement 2
FinSi
Si condition Alors Traitement 1 Sinon   Traitement 2
FinSi
…..;
If condition Then Traitement 1
Else
Traitement 2;
Remarque :
  une condition est une expression booléenne qui peut prendre la valeur vraie ou la valeur
fausse.
  [séquences d’initialisations] est une séquence d’instructions qui contiendra les éventuelles initialisations (valeurs initiales nécessaires à définir avant d’engager le traitement conditionnel)
  Une condition peut être composée de plusieurs propositions logiques liées par les opérateurs booléens. Exemple : (x=1) ou (y>=1) et (z dans [2..12])


LEÇON N°2 : La structure de contrôle conditionnelle généralisée

/ DEFINITION :

Une structure conditionnelle est dite généralisée lorsqu'elle permet de résoudre des problèmes dans lesquels plusieurs alternatives sont envisageables. Une fois qu'une condition est évaluée et qu'un traitement est exécuté alors que les autres ne le seront pas

II/ LA SYNTAXE :
Au niveau de l’analyse
Au niveau de l’ algorithme
Au niveau du programme
[ séquences d’initialisation]
SI condition1 Alors
{trait1}
Sinon si condition2 Alors
{trait2}
Sinon si condition3 Alors
{trait3}
……..
Sinon si condition n-1 Alors {trait n-1}
Sinon traitn
FinSi
SI condition1 Alors
{trait1}
Sinon si condition2 Alors
{trait2}
Sinon si condition3 Alors {trait3}
……..
Sinon si condition n-1 Alors {trait n-1}
Sinon traitn
FinSi
IF condition1 THEN
trait1 Else IF condition2 THEN
trai2 Else IF condition3 THEN
trait3
………..
ELSE IF condition n-1 THEN trait n-1
ELSE trait n ;
Remarques :
: En Pascal le mot « Else » n’est jamais précédé par un point-virgule « ; ».
: Lorsqu’un traitement est exprimé par une seule instruction, les délimiteurs BEGIN et END deviennent superflus.
: Le dernier « ELSE » est raccordé au dernier « IF» qui le précède.

LEÇON N°3 : La structure de contrôle conditionnelle à choix


Définition
La structure de choix consiste à faire un choix parmi plusieurs alternatives. Le choix du traitement dépend de la valeur du sélecteur (la variable qui reçoit les tests). Cette variable doit être de type scalaire (entier, caractère, booléen, scalaire énuméré ou encore intervalle).

2°) Syntaxe :

Au niveau de l’analyse
Au niveau de l’algorithme
Au niveau du programme
[ séquences d’initialisation] Selon sélecteur Faire
Val_1 : trait1 val _2 : trait2 val_3 : trait3
…………..

val_n : trait n
Sinon Traitm Fin Selon
séquences d’initialisation Selon sélecteur Faire
Val_1 : trait1 val _2 : trait2 val_3 : trait3
…………..

val_n : trait n
Sinon Traitm{facultatif}
Fin Selon
séquences d’initialisation ; Case sélecteur OF
Val_1 : trait1 ; Val_ 2 : trait2 ; Val_3 : trait3 ;
………….. val_n : trait n ; ELSE Traitm ;
{facultatif}
END ;

3°) Remarques :
·         Chaque traitement peut comporter un ou plusieurs instructions. Dans le deuxième cas elles seront délimitées par les mots BEGIN et END ;
·         En Pascal, CASE … OF est la seule structure qui se termine avec le mot réservé END ; bien qu’elle n’a pas débuté avec le mot BEGIN
·         Le sélecteur est une variable de type scalaire discret.
·         La partie SINON est facultative.
·         Le sélecteur peut être comparé à :
à Une seule valeur,
à Une série de valeurs séparées par des virgules (ex : 1,3,5,7)
à Un intervalle (ex : ‘A’..’Z’)
·         La structure à choix (selon) offre une meilleure lisibilité à la solution, d’où son adoption dans le cas d’un traitement à plusieurs conditions. Cependant son utilisation n’est pas toujours possible puisque dans certains cas, les conditions s’expriment en fonction de plusieurs variables (exemple : (x<0) et (y<0)) ou utilisent un sélecteur qui n’est pas scalaire. Dans ce cas, l’emploi de la structure généralisée s’impose.