CHAPITRE 2 : LES STRUCTURES CONDITIONNELLES

Une structure conditionnelle permet a un algorithme de prendre une decision. Selon qu'une condition est vraie ou fausse, certaines instructions seront executees ou ignorees.

1. Le principe

SI une condition est vraie
ALORS on execute un bloc d'instructions
SINON on execute eventuellement un autre bloc

2. La structure de base

Si(condition) Alors

    ...

FinSi
Si(note >= 10) Alors

    Ecrire("Admis");

FinSi

3. Fonctionnement

Le programme evalue la condition. Deux cas se presentent :

Condition VRAIE          Condition FAUSSE
      │                        │
      ▼                        ▼
Instructions executees     Bloc ignore

4. La forme Si…Sinon

Lorsque deux traitements sont possibles :

Si(condition) Alors

    ...

Sinon

    ...

FinSi
Si(age >= 18) Alors

    Ecrire("Majeur");

Sinon

    Ecrire("Mineur");

FinSi

5. Un exemple complet

Algorithme Admission;

Var
    note : reel;

Debut

    Lire(note);

    Si(note >= 10) Alors

        Ecrire("Admis");

    Sinon

        Ecrire("Ajourne");

    FinSi

Fin.

6. Les operateurs logiques

ET : les deux conditions doivent etre vraies

Si(age >= 18 ET note >= 10)

OU : une seule suffit

Si(note >= 10 OU bonus = 1)

NON : inverse la condition

Si(NON trouve)

7. Les tables de verite

ABA ET BA OU B
FFFF
FVFV
VFFV
VVVV
ANON A
VF
FV

8. Les conditions imbriquees

Si(age >= 18) Alors

    Si(note >= 10) Alors

        Ecrire("Admis");

    Sinon

        Ecrire("Echec");

    FinSi

Sinon

    Ecrire("Mineur");

FinSi

9. Un cas concret : ajouter 5 minutes a une heure

Si(m < 55) Alors

    m <- m + 5;

Sinon

    Si(h < 23) Alors

        h <- h + 1;
        m <- m - 55;

    Sinon

        h <- 0;
        m <- m - 55;

    FinSi

FinSi

Cet exemple montre bien l'interet de l'imbrication : le passage a l'heure suivante, puis le passage a minuit, sont deux cas distincts.

10. Le tableau de trace

Lire(note)

Si(note >= 10) Alors
    resultat <- "Admis"
Sinon
    resultat <- "Ajourne"
FinSi

Pour note = 8 :

EtapenoteConditionresultat
Lecture8--
Test8Faux-
Sinon8FauxAjourne

11. Les erreurs frequentes

  • Oublier FinSi
  • Confondre = et <- : dans un test on ecrit Si(x = 5), l'affectation s'ecrit x <- 5;
  • Oublier le Sinon alors que deux traitements sont necessaires
  • Mal imbriquer les conditions : chaque Si doit avoir son FinSi

12. Bonnes pratiques

  • Toujours mettre la condition entre parentheses
  • Indenter les blocs
  • Toujours ecrire FinSi
  • Eviter les conditions trop longues : decomposez les tests complexes

A retenir

  • La structure de base est Si…Alors…FinSi
  • Le bloc Sinon est facultatif
  • Comparateurs : =, <>, <, >, <=, >=
  • Operateurs logiques : ET, OU, NON
  • Les conditions peuvent etre imbriquees

Exercices d'application

Exercice 1. Signe d'un nombreLisez un entier et affichez « Positif », « Negatif » ou « Nul ».
Exercice 2. Le plus grandLisez deux nombres et affichez le plus grand. Traitez aussi le cas ou ils sont egaux.
Exercice 3. Moyenne et admissionLisez trois notes, calculez la moyenne et affichez « Admis » si elle atteint 10, « Ajourne » sinon.

Cherchez avant de regarder la solution : c'est en butant sur les difficultes que l'on progresse.

Questions / Réponses

Aucune question. Soyez le premier à poser une question.
★ ★ ★ ★ ★
2 votes. Moyenne 5 sur 5.

Ajouter un commentaire

Anti-spam