Conditions simples et composées | Algorithmique Seconde

Introduction

CONDITIONS SIMPLES & COMPOSÉES
Instructions conditionnelles - Logique et Opérateurs

Découvrez comment combiner des conditions pour des décisions complexes

Simple
ET
OU

Conditions simples

Test d'une seule condition

DÉFINITION
Qu'est-ce qu'une condition simple ?

Une condition simple est une condition qui ne teste qu'une seule expression logique :

SI expression_logique ALORS
    instructions
FIN SI
Exemples de conditions simples
  • SI age >= 18 ALORS → condition sur un âge
  • SI note > 10 ALORS → condition sur une note
  • SI temperature < 0 ALORS → condition sur température

Opérateurs de comparaison

Symboles de comparaison

OPÉRATEURS COURANTS
Liste des opérateurs de comparaison
  • = : égal à
  • ou <> : différent de
  • < : strictement inférieur à
  • > : strictement supérieur à
  • <= : inférieur ou égal à
  • >= : supérieur ou égal à
EXEMPLES D'UTILISATION
Applications des opérateurs
  • SI a = b ALORS → test d'égalité
  • SI xy ALORS → test de différence
  • SI note >= 10 ALORS → test de seuil
  • SI temperature < 0 ALORS → test de seuil inférieur

Conditions composées

Combinaison de plusieurs conditions

DÉFINITION
Qu'est-ce qu'une condition composée ?

Une condition composée combine plusieurs conditions simples avec des opérateurs logiques :

SI (condition1) ET (condition2) ALORS
    instructions
FIN SI
EXEMPLES DE CONDITIONS COMPOSÉES
Applications concrètes
  • SI age >= 18 ET permis = "oui" ALORS → conduire autorisé
  • SI note1 >= 10 ET note2 >= 10 ALORS → admis
  • SI a > 0 ET b > 0 ET c > 0 ALORS → triangle possible

Opérateurs logiques

ET, OU, NON

OPÉRATEURS DE LOGIQUE
Les 3 opérateurs logiques
  • ET : toutes les conditions doivent être vraies
  • OU : au moins une condition doit être vraie
  • NON : inverse la valeur de vérité
TABLE DE VÉRITÉ
Opérateur ET
A B A ET B
Vrai Vrai Vrai
Vrai Faux Faux
Faux Vrai Faux
Faux Faux Faux
Opérateur OU
A B A OU B
Vrai Vrai Vrai
Vrai Faux Vrai
Faux Vrai Vrai
Faux Faux Faux

Priorité des opérateurs

Ordre d'évaluation

ORDRE DE PRIORITÉ
Hiérarchie des opérateurs logiques
  1. NON : priorité la plus élevée
  2. ET : priorité moyenne
  3. OU : priorité la plus basse
EXEMPLES DE PRIORITÉ
Ordre d'évaluation
  • SI a = 5 ET b = 10 OU c = 20 ALORS
    → D'abord ET, puis OU
  • SI a = 5 ET b = 10 OU c = 20 ET d = 30 ALORS
    → D'abord les ET, puis le OU
  • SI NON a = 5 ET b = 10 ALORS
    → D'abord NON, puis ET

Exemple complet d'algorithme

Validation d'une carte bancaire

ALGORITHME DE VALIDATION
Exemple de condition composée
Variables numero, code, date_expiration, solde : Chaîne
Variables age : Entier

Afficher("Entrez le numéro de carte : ")
Lire(numero)
Afficher("Entrez le code PIN : ")
Lire(code)
Afficher("Entrez la date d'expiration : ")
Lire(date_expiration)
Afficher("Entrez votre âge : ")
Lire(age)
Afficher("Entrez le solde : ")
Lire(solde)

SI (Longueur(numero) = 16) ET (EstNumerique(numero)) ALORS
    SI (Longueur(code) = 4) ET (EstNumerique(code)) ALORS
        SI (DateValide(date_expiration)) ET (age >= 18) ALORS
            SI (solde >= 10) ALORS
                Afficher("Paiement validé")
            SINON
                Afficher("Solde insuffisant")
            FIN SI
        SINON
            Afficher("Date expirée ou âge insuffisant")
        FIN SI
    SINON
        Afficher("Code PIN invalide")
    FIN SI
SINON
    Afficher("Numéro de carte invalide")
FIN SI
ANALYSE DES CONDITIONS
Conditions multiples et imbriquées

Cet exemple montre :

  • Des conditions simples (Longueur(numero) = 16)
  • Des conditions composées avec ET
  • Des structures conditionnelles imbriquées
  • Des validations multiples avant l'action finale

Parenthèses et groupement

Contrôle de l'ordre d'évaluation

UTILISATION DES PARENTHÈSES
Pourquoi utiliser des parenthèses ?

Les parenthèses permettent de modifier l'ordre d'évaluation des opérateurs logiques :

SI (A OU B) ET C ALORS
→ D'abord A OU B, puis le résultat ET C
EXEMPLES DE GROUPES
Groupements logiques
  • SI (a = 5 OU b = 10) ET c = 20 ALORS
    → a=5 ou b=10, ET c=20
  • SI a = 5 ET (b = 10 OU c = 20) ALORS
    → a=5, ET (b=10 ou c=20)
  • SI ((a = 5 OU b = 10) ET c = 20) OU d = 30 ALORS
    → ((a=5 ou b=10) et c=20) ou d=30

Applications concrètes

Où utiliser les conditions composées ?

EXEMPLES D'UTILISATION
Domaines d'application
  • 1 Systèmes de sécurité : accès autorisé si authentifié ET rôle approprié
  • 2 Validation de formulaires : champs remplis ET format correct
  • 3 Jeux : collision si position A ET vitesse > seuil
  • 4 Calculs de tarifs : réduction si client fidèle OU panier > seuil
EXEMPLE PRATIQUE
Système de réduction
Variables client_fidele, panier, age, reduction : Réel

SI (client_fidele = "oui") ET (panier > 100) ALORS
    reduction ← 15  // 15% de réduction
SINON
    SI (age < 25) OU (age > 65) ALORS
        reduction ← 10  // 10% de réduction
    SINON
        reduction ← 0
    FIN SI
FIN SI

Afficher("Réduction appliquée : ", reduction, "%")

Exercice d'application

Problème à résoudre

ÉNONCÉ
Exercice

Écrire un algorithme qui détermine si un candidat est admis à un concours sachant que :

  • Il doit avoir une note de français ≥ 10
  • Il doit avoir une note de maths ≥ 10
  • Il est admis si la moyenne des deux notes est ≥ 12
  • Il est également admis s'il a une note de français ≥ 15

On suppose que l'utilisateur entre les notes de français et de maths.

Solution de l'exercice

Correction détaillée

ALGORITHME COMPLET
Solution pas à pas
Variables francais, maths, moyenne : Réel

Afficher("Entrez la note de français : ")
Lire(francais)
Afficher("Entrez la note de maths : ")
Lire(maths)

moyenne ← (francais + maths) / 2

SI (francais >= 10) ET (maths >= 10) ALORS
    SI (moyenne >= 12) OU (francais >= 15) ALORS
        Afficher("Admis")
    SINON
        Afficher("Refusé")
    FIN SI
SINON
    Afficher("Refusé")
FIN SI
ANALYSE DE LA SOLUTION
Conditions imbriquées et composées
  • On vérifie d'abord que les deux notes sont ≥ 10 (ET)
  • Si c'est le cas, on vérifie si la moyenne ≥ 12 OU français ≥ 15 (OU)
  • On combine des conditions simples et composées

Exercice supplémentaire

Système de transport

ÉNONCÉ
Exercice

Écrire un algorithme qui détermine le mode de transport optimal en fonction des conditions météo et de la distance à parcourir :

  • Si la distance est ≤ 2 km : marche ou vélo
  • Si la distance est > 2 km et ≤ 10 km : vélo ou bus
  • Si la distance est > 10 km : bus ou voiture
  • Si il pleut : vélo exclu
  • Si il neige : bus exclu
  • Si la température est < 0°C : marche exclue

On suppose que l'utilisateur entre la distance, la température et la météo (pluie/neige/soleil).

Solution de l'exercice supplémentaire

Correction détaillée

ALGORITHME DE TRANSPORT
Solution pas à pas
Variables distance, temperature : Réel
Variables meteo : Chaîne

Afficher("Entrez la distance (km) : ")
Lire(distance)
Afficher("Entrez la température (°C) : ")
Lire(temperature)
Afficher("Entrez la météo (pluie/neige/soleil) : ")
Lire(meteo)

SI distance <= 2 ALORS
    SI (meteo ≠ "pluie") ET (temperature >= 0) ALORS
        Afficher("Marche ou vélo")
    SINON
        SI (meteo ≠ "pluie") ET (temperature >= 0) ALORS
            Afficher("Marche")
        SINON
            SI (meteo ≠ "pluie") ALORS
                Afficher("Vélo")
            SINON
                Afficher("Transport public ou voiture")
            FIN SI
        FIN SI
    FIN SI
SINON
    SI distance <= 10 ALORS
        SI meteo ≠ "pluie" ALORS
            Afficher("Vélo")
        SINON
            SI meteo ≠ "neige" ALORS
                Afficher("Bus")
            SINON
                Afficher("Voiture")
            FIN SI
        FIN SI
    SINON
        SI meteo ≠ "neige" ALORS
            Afficher("Bus")
        SINON
            Afficher("Voiture")
        FIN SI
    FIN SI
FIN SI
ANALYSE DE LA SOLUTION
Conditions multiples et imbriquées

Cet algorithme montre l'utilisation de nombreuses conditions composées avec ET et OU, ainsi que des structures conditionnelles imbriquées pour traiter tous les cas possibles.

Optimisation des conditions

Meilleures pratiques

BONNES PRATIQUES
Organisation des conditions
  • Utilisez des parenthèses pour clarifier l'ordre d'évaluation
  • Évitez les conditions trop complexes (max 3-4 opérateurs)
  • Utilisez des variables booléennes pour simplifier les expressions
  • Structurez votre code avec une indentation claire
VARIABLES BOOLÉENNES
Simplification avec des variables

Au lieu d'écrire :

SI (a > 10 ET b < 5) OU (c = 20 ET d ≠ 0) ALORS

On peut écrire :

condition1 ← (a > 10 ET b < 5)
condition2 ← (c = 20 ET d ≠ 0)
SI condition1 OU condition2 ALORS

Complexité des conditions

Analyse de performance

ANALYSE DES CONDITIONS
Temps d'évaluation
Type de condition Complexité Exemple Note
Simple O(1) SI a > 5 ALORS Très rapide
Avec ET O(1) SI a > 5 ET b < 10 ALORS Rapide
Avec OU O(1) SI a > 5 OU b < 10 ALORS Rapide
Imbriquées O(n) SI a > 5 ALORS SI b < 10 ALORS Dépend de la profondeur
OPTIMISATION
Stratégies d'optimisation
  • Placer les conditions les plus probables en premier
  • Éviter les répétitions de calculs dans les conditions
  • Utiliser des variables pour stocker des résultats intermédiaires
  • Minimiser l'imbrication des structures conditionnelles

Résumé

Points clés

CONDITIONS SIMPLES
Caractéristiques
  • Ne testent qu'une seule expression logique
  • Utilisent des opérateurs de comparaison (=, ≠, <, >, ≤, ≥)
  • Syntaxe : SI condition ALORS instructions FIN SI
CONDITIONS COMPOSÉES
Caractéristiques
  • Combinent plusieurs conditions avec ET, OU, NON
  • Ont un ordre de priorité : NON > ET > OU
  • Utilisent des parenthèses pour contrôler l'ordre d'évaluation
Applications
  • Systèmes de validation
  • Calculs conditionnels
  • Contrôles de sécurité
  • Jeux et simulations
Les conditions simples et composées sont essentielles en algorithmique !

Conclusion

Félicitations !

FÉLICITATIONS !
MAÎTRISE DES CONDITIONS SIMPLES & COMPOSÉES
Vous comprenez maintenant la logique conditionnelle !

Continuez à pratiquer pour renforcer vos compétences en algorithmique

Compris
Retenu
Appliqué