Vous êtes sur la page 1sur 7

Cours algorithmique Auteur : Moutari Mahamane

Chapitre 2: Les conditions

1. Introduction

Souvent les problèmes nécessitent l'étude de plusieurs situations qui ne


peuvent pas être traitées par les séquences d'actions simples. Puisqu'on a
plusieurs situations, et qu'avant l'exécution, on ne sait pas à quel cas de
figure on aura à exécuter, dans l'algorithme on doit prévoir tous les cas
possibles.

Ce sont les structures conditionnelles qui le permettent, en se basant sur


ce qu'on appelle prédicat ou condition.

1.2. Notion de PREDICAT

Un prédicat est un énoncé ou proposition qui peut être vrai ou faux selon ce
qu'on est entrain de parler.

En mathématiques, c'est une expression contenant une ou plusieurs


variables et qui est susceptible de devenir une proposition vraie ou fausse
selon les valeurs attribuées à ces variables.

Exemple :

(10 < 15) est un prédicat vrai

(10 < 3) est un prédicat faux

Une condition est donc une comparaison parce qu'elle est composée
des valeurs et des operateurs.

1
Cours algorithmique Auteur : Moutari Mahamane

Les valeurs peuvent être a priori de n’importe quel type (numériques,


caractères…). Mais si l’on veut que la comparaison ait un sens, il faut que
les deux valeurs de la comparaison soient du même type !
Les opérateurs de comparaison sont :

� = égal à… ;

� <> différent de… ;

� < strictement plus petit que… ;

� > strictement plus grand que… ;

� =< plus petit ou égal à… ;

� >= plus grand ou égal à…

Les opérateurs logiques sont :

 La négation : "non"
 L'intersection : "et"
 L'union : "ou"

1.3. Evaluation d'une expression logique

Une condition est une expression de type logique. Ils lui correspondent
deux valeurs possibles VRAI et FAUX qu'on note par V ou F.

Considérons deux variables logiques A et B :

2
Cours algorithmique Auteur : Moutari Mahamane

Tableaux d'évaluations

La négation d'une condition

Non C1
C1 Vrai Faux
C1 Faux Vrai

L'intersection de deux conditions


C1 et C2 C2 Vrai C2 Faux

C1 Vrai Vrai Faux

C1 Faux Faux Faux

L'union de deux conditions

C1 ou C2 C2 Vrai C2 Faux

C1 Vrai Vrai Vrai

C1 Faux Vrai Faux

1.4. La structure conditionnelle SI

a - forme 1 : SI - SINON

Syntaxe

SI (condition) ALORS
<bloc d'instructions 1>
SINON
<bloc d'instructions 2>
FINSI

* Si condition a la valeur logique vrai,


alors le <bloc d'instructions 1> est exécuté

* Si condition a la valeur logique faux,


alors le <bloc d'instructions 2> est exécuté

Exemple : Trouver la plus grande valeur entre A et B

3
Cours algorithmique Auteur : Moutari Mahamane

SI (A>B) ALORS
MAX ← A
SINON
MAX ← B
FINSI

b - forme 2 : SI sans SINON

La partie sinon est facultative. On peut donc utiliser SI de la façon suivante :

SI (condition) ALORS
<bloc d'instructions>
FINSI

Exemple : calculer la racine carrée du nombre N

SI (N>0) ALORS
R ← sqrt(N)
FINSI

c - forme 3 : SI - SINON - SI

En combinant plusieurs structures SI - SINON en une expression nous obtenons une


structure qui est très courante pour prendre des décisions entre plusieurs
alternatives:

Syntaxe

SI (condition #1) ALORS


<bloc d'instructions #1>
SINON SI (condition #2) ALORS
<bloc d'instructions #2>
SINON SI (condition #3) ALORS
<bloc d'instructions #3>
SINON SI ...
...
SINON SI (condition #n) ALORS
<bloc d'instructions #n>
SINON
<bloc d'instructions #n+1>
FINSI

4
Cours algorithmique Auteur : Moutari Mahamane

Les conditions condition#1 ... condition#n sont évaluées du haut vers le bas
jusqu'à ce que l'une d'elles soit différente vraie. Le bloc d'instructions y lié est alors
exécuté et le traitement de la commande est terminé.

Exemple : Afficher si le nombre N est strictement positif, strictement négatif ou nul

SI (N>0) ALORS
ecrire('le nombre est strictement positif')
SINON SI (N<0) ALORS
ecrire('le nombre est strictement négatif')
SINON
ecrire('le nombre est nul')
FINSI

1.5. La structure conditionnelle SELON

Cette structure conditionnelle est appelée aussi à choix multiple ou sélective car elle
sélectionne entre plusieurs choix à la fois, et non entre deux choix alternatifs.

Syntaxe

SELON (sélecteur) FAIRE

Cas <valeurs-1> : <bloc d'instructions #1>

Cas <valeur-2> : <bloc d'instructions #2>

………

Cas <valeur-n> : <bloc d'instructions #n>

SINON : <bloc d'instructions #n+1>

FINSELON

Le sélecteur peut être une variable de type scalaire ou une expression arithmétique
ou logique.

La structure SELON évalue le "sélecteur", passe à comparer celui ci respectivement


avec les valeurs dans les listes. En cas d'égalité avec une valeur, les instructions
correspondantes, qui sont devant cette valeur seront exécutées.

5
Cours algorithmique Auteur : Moutari Mahamane

Après avoir traité les instructions correspondantes, l'exécution se poursuit après le


FINSELON.

Remarque

1. Le sélecteur doit avoir le même type que les valeurs devant les cas.

2. Le type de ces valeurs ne doit être, ni réel ni chaîne de caractères.

Exercices d'application

Exercice 1

Ecrivez un algorithme qui lit trois valeurs entières (A, B et C) au clavier et qui affiche la plus
grande des trois valeurs, en utilisant:

a) SI - SINON et une variable d'aide MAX

b) SI- SINON- SI - ... sans variable d'aide

Exercice 2

Ecrire un algorithme qui va lire la moyenne (sur 20) d’un utilisateur et qui affiche
l’appréciation selon les cas suivants :
o si la moyenne n’est pas comprise entre 0 et 20 affiche "cette moyenne est invalide"
o si la moyenne appartient à l’intervalle [18, 20] affiche "Mention Excellente"
o si la moyenne appartient à l’intervalle [16, 18[ affiche "Mention Très Bien"
o si la moyenne appartient à l’intervalle [14, 16[ affiche "Mention Bien"
o si la moyenne appartient à l’intervalle [12, 14[ affiche "Mention Assez Bien"
o si la moyenne appartient à l’intervalle [10, 12[ affiche "Mention Passable"
o si la moyenne appartient à l’intervalle [0, 10[ affiche "Echec"

Exercice3

Ecrivez un algorithme qui calcule les solutions réelles d'une équation du second degré

ax2+bx+c = 0 en discutant la formule:

6
Cours algorithmique Auteur : Moutari Mahamane

Utilisez une variable d'aide D pour la valeur du discriminant b2-4ac et décidez à l'aide de D, si
l'équation a une, deux ou aucune solution réelle. Utilisez des variables du type int pour A, B
et C.
Considérez aussi les cas où l'utilisateur entre des valeurs nulles pour A; pour A et B; pour A, B
et C. Affichez les résultats et les messages nécessaires sur l'écran.

Exercice 4

Ecrire un algorithme qui demande à l’utilisateur de taper 2 entiers et d’en faire l’une des
opérations suivantes selon le choix opté :

1. Addition
2. Soustraction
3. Multiplication
4. Division

Exercice 5 :

Ecrire un programme qui calcule la somme et la moyenne des nombres impairs parmi les 5
nombres du type int à entrer au clavier,

a) en se servant de 8 variables (mémorisation des valeurs entrées)

b) en se servant de 4 variables (perte des valeurs entrées)

Vous aimerez peut-être aussi