SlideShare ist ein Scribd-Unternehmen logo
1 von 8
Downloaden Sie, um offline zu lesen
COURS                                           ALGORITHME

1. DEFINITIONS

       Algorithme : Description en langage naturel de la suite des actions effectuées par un programme
       structuré. Un algorithme est écrit en utilisant un langage de description d’algorithme (LDA).
       L’algorithme ne doit pas être confondu avec le programme proprement dit (tel que Pascal, C, ..)

       Algorigramme : Traduction graphique de l’algorithme. Aussi appelé Organigramme.

             Quelques symboles utilisés pour construire un algorigramme
          SYMBOLE          DESIGNATION                   SYMBOLE         DESIGNATION
               Symboles de traitement                          Symboles auxiliaires
                          Symbole général                                      Renvoi
                      Opération sur des                             Connecteur utilisé à la fin
                      données, instructions, …                      et en début de ligne pour
                                                                    en assurer la continuité



                             Sous-programme                                   Début, fin ou
                         Portion de programme                                  interruption
                                                                        d’un algorithme




                                                                                  Liaison
                               Entrée-Sortie
                                                                        Les différents symboles
                         Mise à disposition ou
                                                                        sont reliés entre eux par
                         enregistrement d’une
                                                                        des lignes de liaison.
                         information
                                                                        Le cheminement va de
                                                                        haut en bas et de gauche
                                                                        à droite.
                    Symbole de test
                                                                        Un cheminement différent
                             Branchement
                                                                        est indiqué à l’aide d’une
                       Décision d’un choix parmi
                                                                        flèche.
                       d’autres en fonction des
                       conditions




       Syntaxe : Règles d’écriture d’un langage donné.

       Type de données :
       Un programme peut-être amené à manipuler différents types de données :
             - booléen : valeur pouvant être soit Vraie, soit Fausse.
             - entiers : valeur numériques entières pouvant être signées ou non signées (codées
             sur un ou plusieurs octets).
             - réels : valeurs numériques codées avec une mantisse et un exposant.
             - caractère : octet correspondant à un code ASCII.
             - chaîne de caractères : ensemble de caractères.
             - tableau de données : ensemble de données de même type (exemple : tableau
             d’entiers, tableau de réels).

       Toutes ces données sont codées sous forme d'octets en mémoire.

       Constante : donnée manipulée par un programme et ne pouvant être modifiée.
       Exemple : Constante Pi = 3.141559



ALGO                                                                                          Page 1/8
COURS                                            ALGORITHME

       Variable : donnée manipulée par un programme et pouvant être modifiée.
       Ce peut être :
       - une donnée d’entrée ;
       - le résultat final d’un calcul ;
       - un résultat intermédiaire de calcul.

       Identificateur : nom explicite d’une constante, d’une variable ou d’une fonction.
       Exemples : Conversion_BCD, Résultat, Lettre…

       Procédures et fonctions : Une procédure ou une fonction effectuent une suite d’actions
       élémentaires constituant un tout.
       Une fonction se différencie d’une procédure par le fait qu’elle fournit un résultat.


2. ORGANISATION D’UN PROGRAMME

       L’algorithme d’un programme est organisé en plusieurs parties :
       • déclaration des constantes
       • déclaration des variables
       • définition des fonctions et procédures
       • définition du programme principal



                                                       algorithme
                                    L’en-tête                         nom de l’algorithme ;



                                                       const
                                                               liste des constantes ;
                                                       var
        Déclaration des constantes, variables                  listes des variables ;
                                                       struc
                                                               liste des structures ;



                                                       fonc
                                                               liste des fonctions ;
        Définition des fonctions et procédures
                                                       proc
                                                               liste des procédures ;



                                                       début
                                                               action 1 ;
                                                               action 2 ;
                                                                  .
           Définition du corps de l’algorithme                    .
                                                                  .
                                                               action n ;
                                                       fin algorithme

2.1 Déclaration des constantes
      Syntaxe : Constante NomConstante : [Type] = Valeur

                    Constante Pi : Reel = 3.141559
       Exemples :
                    Constante NombreLettres : Entier = 10

2.2 Déclaration des variables
      Syntaxe : Variable NomVariable : [Type]

       Exemples :   Variable Rayon : Reel
                    Variable Compteur : Entier
                    Variable Lettre : Caractere
ALGO                                                                                          Page 2/8
COURS                                                        ALGORITHME

2.3 Définition des fonctions et procédures
      Les procédures et fonctions peuvent nécessiter éventuellement un ou plusieurs paramètres
      d’entrée ou de sortie.
      Un paramètre d’entrée est la référence à une variable manipulée par la procédure ou la fonction.
      Un paramètre de sortie est une valeur renvoyée par une fonction.
      Une fonction ou une procédure peut elle-même appeler une ou plusieurs fonctions et procédures.

       Syntaxe de la déclaration d’une fonction :
       Fonction NomFonction (NomEntrée1 : [Type], NomEntrée2 : [Type],…) : [TypeDuRésultat]
             Constante ~ déclaration des constantes locales ~
             Variable ~ déclaration des variables locales ~
             Début
             ~ description des actions effectuées par la fonction ~
             Fin

       Syntaxe de l’appel d’une fonction :
       Variable ← NomFonction (NomEntrée1, NomEntrée2…)

       Exemple de déclaration de fonction :
       Fonction Moyenne (Note1 : Reel, Note2 : Reel) : Reel
             Variable Intermediaire : Reel
             Début
                   Intermediaire ← Note1 + Note2
                   Intermediaire ← Intermediaire / 2
                   Moyenne ← Intermediaire
             Fin

       Exemples d’utilisation de la fonction :
       Afficher (Moyenne(10.5,15)) ou NouvelleNote ← Moyenne (10,5.5)

       Nota : la déclaration et l’appel d’une procédure ne sont pas développés ici.


2.4 Définition du programme principal
      Le programme principal consiste en une suite d’opérations élémentaires faisant souvent appel à
      des fonctions ou procédures. Ces différentes opérations sont mentionnées en utilisant les
      structures algorithmiques décrites au paragraphe 5.

       Le programme principal est délimité par les mots-clefs Début et Fin


3. AFFECTATION

       Une affectation consiste à attribuer une valeur à une variable.
       La syntaxe générale est la suivante : NomVariable ← Expression
       « Expression » peut être :
       · une constante. ......................................................................................Ex : surface ← 40
       · une autre variable. .................................................…........Ex : Donnee ← ValeurMemorisee
       · le résultat d’une fonction. .......................................……....... Ex : resultat ← racine (nombre)
       · un calcul portant sur ces différents éléments. .……... Ex : surface ← (PI * Carre (Diametre)) / 4

       Nota : Un abus d’écriture nous amène parfois à voir le signe = à la place de la flèche.
       C’est valable normalement pour l’écriture en langage de programmation (Basic compilé,
       Pascal, …) mais pas dans un algorithme.




ALGO                                                                                                               Page 3/8
COURS                                                      ALGORITHME

4. OPERATEURS – CONDITIONS

4.1 Opérateurs
      Les opérateurs permettent d’élaborer une expression en vue d’effectuer un calcul ou une
      comparaison.
      L’usage des parenthèses est vivement conseillé dans le cas d’expressions complexes.

                      Nature               Variables utilisées     Notation             Signification
                                                                  +           Addition
            Opérateurs arithmétiques     Entier                   -           Soustraction
                                         Réel                     *           Multiplication
                                                                  /           Division (réelle)
                                                                  DIV         Division entière
                                                                  MOD         Reste de la division entière
                                                                  et          Fonction ET
            Opérateurs logiques          Booléen                  ou          Fonction OU
                                         Entier                   ouex        Fonction OU EXCLUSIF
                                                                  non         Fonction NON
            Opérateur de concaténation   Chaîne de caractères     +           Concaténation
                                         Booléen                  =           Egal
                                         Entier                   ≠           Différent
            Opérateurs de comparaison    Réel                     <           Inférieur
                                         Caractère                >           Supérieur
                                         Chaîne de caractères     ≤           Inférieur ou égal
                                                                  ≥           Supérieur ou égal


4.2 Conditions
      Dans les structures algorithmiques qui vont suivre, le terme « Condition » peut représenter :
      · une condition simple : Ex : x 1 0 Indice 3 80
      · une condition complexe : Ex : (x > 0) ET ((y > 0) OU (z > 0))
      (Indice ≥ 1) ET (Indice ≤ 10) ~ pour 1 ≤ Indice ≤10 ~

5. LES STRUCTURES ALGORITHMIQUES

       Les structures algorithmiques sont réparties en 3 catégories :
       - structures linéaire d'opérations;
       - structures alternatives (ou conditionnelles) ou de choix : en fonction d'une condition, le
       programme exécute des opérations différentes;
       - structures itératives ou répétitives: sous contrôle d'une condition, une séquence d'opérations est
       exécutée répétitivement.

5.1 Structure linéaire
            Les actions successives sont mentionnées les unes après les autres.

                      Syntaxe                                                             Algorigramme

                      Action1                                                                   Action 1

                      Action2
                                                                                                Action 2
                      ...
                      ActionN

                                                                                                Action N



              Remarque : dans la suite, la notation « Actions » ou « ActionsN » représentera une
              succession d’actions comme ci-dessus.

              Exemple : Calcul d’un produit de 2 nombres
                   Variable
                           a,b : réel ~ opérandes ~
                           p : réel ~ résultat du produit ~




ALGO                                                                                                         Page 4/8
COURS                                               ALGORITHME

                     Début
                             Afficher (‘Saisir le nombre a ‘)
                             Saisir (a)
                             Afficher (‘Saisir le nombre b ‘)
                             Saisir (b)
                             p←a*b
                             afficher (p)
                     Fin

5.2 Structures alternatives
      5.2.1 Structure SI ... ALORS ...
            Une condition est testée pour déterminer si l’action ou le groupe d’actions suivant doit
            être exécuté.

                     Syntaxe                                                 Algorigramme

                             Si Condition Alors
                                          Actions                                 Condition

                             FinSi
                                                                                   Actions

                     Remarque : au lieu de FinSi on écrit aussi fsi

              Exemple : Calcul d’une racine carrée
                   Variable
                           x: réel ~ opérande ~
                           r: réel ~ résultat de la racine carrée ~
                   Début
                           Afficher (‘Saisir le nombre x‘)
                           Saisir (x)
                           Si x > 0 Alors
                                          r ← racine (x)
                                          afficher (r)
                           FinSi
                   Fin

       5.2.2 Structure SI ... ALORS ...SINON ...
       Une condition est testée pour déterminer quelle action ou quel groupe d’actions doit être exécuté.

                     Syntaxe                                                 Algorigramme

                     Si Condition Alors
                                                                                  Condition
                                            Actions1
                                    Sinon
                                            Actions2                              Actions1    Actions2

                     FinSi

              Exemple : Calcul d’une racine carrée
                   Variables :
                           x: réel ~ opérande ~
                           r: réel ~ résultat de la racine carrée ~
                   Début
                           Afficher (‘Saisir le nombre x‘)
                           Saisir (x)
                           Si x < 0 Alors
                                          afficher (‘x est négatif’)
                                   Sinon
                                          r ← racine (x)
                                          afficher (r)
                           FinSi
                   Fin

ALGO                                                                                          Page 5/8
COURS                                              ALGORITHME

       5.2.3 Structure de choix multiple

             Une donnée est comparée successivement à des valeurs constantes :

                    Syntaxe                                                         Algorigramme
                                                            Donnée =
                                                             Valeur1
                    Suivant Donnée faire                                 Donnée =
                                Valeur1 : Actions1                        Valeur2

                                Valeur2 : Actions2                                      Donnée =
                                ...                                                      ValeurN

                                ValeurN : ActionsN
                          Sinon                              Actions1    Actions2        ActionsN   ActionsN+1

                                ActionsN+1
                    FinSuivant

                    Remarques : la partie « ActionsN+1 » peut ne pas exister.
                    Plusieurs valeurs différentes peuvent être regroupées sur une même ligne si les
                    actions correspondantes sont identiques.

             Exemple : Affichage de la nature d’un caractère
                  Variable
                           c: caractère ~ caractère saisi au clavier ~
                  Début
                           Afficher (‘Taper un caractère‘)
                           Saisir (c)
                           Suivant c Faire
                                          ‘A’..’Z’ : afficher (‘Lettre majuscule’)
                                          ‘a’..’z’ : afficher (‘Lettre minuscule’)
                                          ‘0’..’9’ : afficher (‘Chiffre’)
                                   Sinon
                                          afficher (‘Ni Lettre Ni Chiffre’)
                           FinSuivant
                  Fin

5.3 Structures itératives (ou répétitives)

       5.3.1 Structure REPETER ... JUSQUA ...
             Une action ou un groupe d’actions est exécuté répétitivement jusqu'à ce qu’une condition
             soit vérifiée.

                    Syntaxe                                                         Algorigramme

                    Répéter
                          Actions                                                        Actions

                    Jusqu’a Condition
                                                                                        Condition




                    Remarque : la vérification de la condition s’effectue après les actions. Celles-ci sont
                    donc exécutées au moins une fois.

             Exemple : exécution répétitive d’un programme
                  Variables :
                          a,b : réel ~ opérandes ~
                          p : réel ~ résultat du produit ~
                          c : caractère ~ réponse de l’utilisateur ~




ALGO                                                                                                 Page 6/8
COURS                                              ALGORITHME

                    Début
                            Répéter
                                  Afficher (‘Saisir le nombre a ‘)
                                  Saisir (a)
                                  Afficher (‘Saisir le nombre b ‘)
                                  Saisir (b)
                                  p←a*b
                                  afficher (p)
                                  afficher (‘encore un calcul ? Non touche N ; Oui autre touche’)
                                  saisir (c)
                            Jusqu'à c = ‘N’
                    Fin

       5.3.2 Structure TANT QUE ... FAIRE ...
             Une action ou un groupe d’actions est exécuté répétitivement tout le temps où une
             condition est vraie.

                    Syntaxe                                                         Algorigramme

                    TantQue Condition
                    Faire                                                      Condition

                          Actions
                    FinFaire                                                                         Actions




                    Remarque : la vérification de la condition s’effectue avant les actions. Celles-ci
                    peuvent donc ne jamais être exécutées.

             Exemple : Exécution répétitive d’une action
                  Début
                          Tant Que Non (ToucheAppuyée)
                          Faire
                                 Afficher (‘Attente’)
                          FinFaire
                  Fin

       5.3.3 Structure POUR Indice DE ... A .... FAIRE ...
             Une action ou un groupe d’actions est exécuté répétitivement un certain nombre de fois : le
             nombre dépend des valeurs initiale et finale données à la variable « Indice ».

                    Syntaxe                                                         Algorigramme

                    Pour Indice De Val1 A Val2                        Indice ← Val1

                    Faire
                          Actions
                                                                      Indice>Val2
                    FinFaire
                                                                                           Actions

                                                                                      Indice ← Indice+1




                    Remarque : les valeurs initiale (Val1) et finale (Val2) sont incluses dans le comptage.
                    Il est éventuellement possible de spécifier un autre pas d’incrémentation (+2,+10,-
                    1....)




ALGO                                                                                                           Page 7/8
COURS                                        ALGORITHME

         Exemple : Affichage d’une ligne d’étoiles
              Variable
                       i : entier ~ compteur de boucles ~
              Début
                       Pour i de 1 à 80
                       Faire
                               Afficher (‘*’)
                       FinFaire
              Fin

         Remarque : cette structure algorithmique peut en fait être remplacée par une structure
         TANT QUE ... FAIRE …

               Variable
                     i : entier ~ compteur de boucles ~
               Début
                     i←1
                     Tant Que i ≥ 80
                     Faire
                             Afficher (‘*’)
                             i ← i +1
                     FinFaire
               Fin



  Par la suite, nous nous intéresserons plus particulièrement aux structures
                    algorithmiques du programme principal.




ALGO                                                                                    Page 8/8

Weitere ähnliche Inhalte

Was ist angesagt?

Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmiqueAbdoulaye Dieng
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Ines Ouaz
 
L’algorithme 1.pptx
L’algorithme 1.pptxL’algorithme 1.pptx
L’algorithme 1.pptxOkanimegamers
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)rezgui mohamed
 
Ch2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdfCh2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdfFadouaBouafifSamoud
 
Examen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesExamen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesInes Ouaz
 
Programmation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulationProgrammation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulationECAM Brussels Engineering School
 
Cours algorithme: structures répétitives
Cours algorithme: structures répétitivesCours algorithme: structures répétitives
Cours algorithme: structures répétitivesInforMatica34
 
Chapitre5 les chaînes de caractères - Copy.pptx
Chapitre5 les chaînes de caractères - Copy.pptxChapitre5 les chaînes de caractères - Copy.pptx
Chapitre5 les chaînes de caractères - Copy.pptxFerdawsBNasrBSalah
 
Cours langage c
Cours langage cCours langage c
Cours langage ccoursuniv
 
Les structures de données.pptx
Les structures de données.pptxLes structures de données.pptx
Les structures de données.pptxPROFPROF11
 
Travaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesTravaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesInes Ouaz
 
Chap1V2019: Cours en C++
Chap1V2019: Cours en C++Chap1V2019: Cours en C++
Chap1V2019: Cours en C++Aziz Darouichi
 

Was ist angesagt? (20)

Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmique
 
Programmation en C
Programmation en CProgrammation en C
Programmation en C
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)
 
L’algorithme 1.pptx
L’algorithme 1.pptxL’algorithme 1.pptx
L’algorithme 1.pptx
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)
 
Ch2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdfCh2-Notions de base & actions élémentaires.pdf
Ch2-Notions de base & actions élémentaires.pdf
 
Python
PythonPython
Python
 
Algorithme chap 1
Algorithme chap 1Algorithme chap 1
Algorithme chap 1
 
Examen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesExamen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de données
 
Fascicule tp programmation c
Fascicule tp programmation cFascicule tp programmation c
Fascicule tp programmation c
 
Programmation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulationProgrammation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulation
 
Cours algorithme: structures répétitives
Cours algorithme: structures répétitivesCours algorithme: structures répétitives
Cours algorithme: structures répétitives
 
Cours algorithmique02
Cours algorithmique02Cours algorithmique02
Cours algorithmique02
 
Chapitre5 les chaînes de caractères - Copy.pptx
Chapitre5 les chaînes de caractères - Copy.pptxChapitre5 les chaînes de caractères - Copy.pptx
Chapitre5 les chaînes de caractères - Copy.pptx
 
Ch1-Généralités.pdf
Ch1-Généralités.pdfCh1-Généralités.pdf
Ch1-Généralités.pdf
 
Cours langage c
Cours langage cCours langage c
Cours langage c
 
Les structures de données.pptx
Les structures de données.pptxLes structures de données.pptx
Les structures de données.pptx
 
Serie2
Serie2Serie2
Serie2
 
Travaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesTravaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de données
 
Chap1V2019: Cours en C++
Chap1V2019: Cours en C++Chap1V2019: Cours en C++
Chap1V2019: Cours en C++
 

Andere mochten auch

algorithme tronc commun lycée
algorithme tronc commun lycéealgorithme tronc commun lycée
algorithme tronc commun lycéeKayl Mido
 
Exercices pascal tous les chapitres
Exercices pascal tous les chapitresExercices pascal tous les chapitres
Exercices pascal tous les chapitresborhen boukthir
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siNarûtö Bàl'Sèm
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiquefast xp
 
Résumé Algorithme et Programmation
Résumé Algorithme et ProgrammationRésumé Algorithme et Programmation
Résumé Algorithme et Programmationborhen boukthir
 
Exercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombresExercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombressalah fenni
 
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmation
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmationLe livre du_c_pour_les_vrais_d%c3%a9butants_en_programmation
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmationChingongou ­
 
Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)salah fenni
 
What Is Language
What Is LanguageWhat Is Language
What Is LanguageOtissia
 
Certificate of Academic Recognition - Outstanding performance in Pascal progr...
Certificate of Academic Recognition - Outstanding performance in Pascal progr...Certificate of Academic Recognition - Outstanding performance in Pascal progr...
Certificate of Academic Recognition - Outstanding performance in Pascal progr...arman o
 
Moyenne coeff-absences-excel
Moyenne coeff-absences-excelMoyenne coeff-absences-excel
Moyenne coeff-absences-exceljurain
 
Vers des langues de programmation ?
Vers des langues de programmation ?Vers des langues de programmation ?
Vers des langues de programmation ?Nicolas Dubois
 
Programming paradigms c1
Programming paradigms c1Programming paradigms c1
Programming paradigms c1Omar Al-Sabek
 
Chapitre 8: Les arbres
Chapitre 8: Les  arbresChapitre 8: Les  arbres
Chapitre 8: Les arbresMohamed Lahby
 
Les langages de programmation
Les langages de programmationLes langages de programmation
Les langages de programmationPierre Tran
 
Atelier EXCEL : Les fonctions financières
Atelier EXCEL :  Les fonctions financièresAtelier EXCEL :  Les fonctions financières
Atelier EXCEL : Les fonctions financièresZakariyaa AIT ELMOUDEN
 
Les langages de programmation sont trop compliqués
Les langages de programmation sont trop compliquésLes langages de programmation sont trop compliqués
Les langages de programmation sont trop compliquésmercury_wood
 
Telecharger Cours java pour debutant pdf
Telecharger Cours java pour debutant pdfTelecharger Cours java pour debutant pdf
Telecharger Cours java pour debutant pdfwebreaker
 

Andere mochten auch (20)

algorithme tronc commun lycée
algorithme tronc commun lycéealgorithme tronc commun lycée
algorithme tronc commun lycée
 
Exercices pascal tous les chapitres
Exercices pascal tous les chapitresExercices pascal tous les chapitres
Exercices pascal tous les chapitres
 
Devoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 siDevoirs Algorithme + correction pour 4 si
Devoirs Algorithme + correction pour 4 si
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmique
 
Résumé Algorithme et Programmation
Résumé Algorithme et ProgrammationRésumé Algorithme et Programmation
Résumé Algorithme et Programmation
 
Exercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombresExercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombres
 
Correction
CorrectionCorrection
Correction
 
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmation
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmationLe livre du_c_pour_les_vrais_d%c3%a9butants_en_programmation
Le livre du_c_pour_les_vrais_d%c3%a9butants_en_programmation
 
Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)Algorithmique et programmation en Pascal (résumé)
Algorithmique et programmation en Pascal (résumé)
 
What Is Language
What Is LanguageWhat Is Language
What Is Language
 
Certificate of Academic Recognition - Outstanding performance in Pascal progr...
Certificate of Academic Recognition - Outstanding performance in Pascal progr...Certificate of Academic Recognition - Outstanding performance in Pascal progr...
Certificate of Academic Recognition - Outstanding performance in Pascal progr...
 
Moyenne coeff-absences-excel
Moyenne coeff-absences-excelMoyenne coeff-absences-excel
Moyenne coeff-absences-excel
 
Vers des langues de programmation ?
Vers des langues de programmation ?Vers des langues de programmation ?
Vers des langues de programmation ?
 
Programming paradigms c1
Programming paradigms c1Programming paradigms c1
Programming paradigms c1
 
Cours de c
Cours de cCours de c
Cours de c
 
Chapitre 8: Les arbres
Chapitre 8: Les  arbresChapitre 8: Les  arbres
Chapitre 8: Les arbres
 
Les langages de programmation
Les langages de programmationLes langages de programmation
Les langages de programmation
 
Atelier EXCEL : Les fonctions financières
Atelier EXCEL :  Les fonctions financièresAtelier EXCEL :  Les fonctions financières
Atelier EXCEL : Les fonctions financières
 
Les langages de programmation sont trop compliqués
Les langages de programmation sont trop compliquésLes langages de programmation sont trop compliqués
Les langages de programmation sont trop compliqués
 
Telecharger Cours java pour debutant pdf
Telecharger Cours java pour debutant pdfTelecharger Cours java pour debutant pdf
Telecharger Cours java pour debutant pdf
 

Ähnlich wie Algorithme

Généralités sur la notion d’Algorithme
Généralités sur la notion d’AlgorithmeGénéralités sur la notion d’Algorithme
Généralités sur la notion d’AlgorithmeInforMatica34
 
Logique 1 Logiciel Controle De Gestion
Logique 1 Logiciel Controle De GestionLogique 1 Logiciel Controle De Gestion
Logique 1 Logiciel Controle De Gestionthierry_le_chapois
 
Chapitre 2-Concepts de base de l'algorithme-2024.pdf
Chapitre 2-Concepts de base de l'algorithme-2024.pdfChapitre 2-Concepts de base de l'algorithme-2024.pdf
Chapitre 2-Concepts de base de l'algorithme-2024.pdfAdjimbawNDIAYE
 
cours fortran.pptx
cours fortran.pptxcours fortran.pptx
cours fortran.pptxMED B
 
Les bases du langage java
Les bases du langage javaLes bases du langage java
Les bases du langage javakrymo
 
Conception de base_de_l_algorithme
Conception de base_de_l_algorithmeConception de base_de_l_algorithme
Conception de base_de_l_algorithmemustapha4
 
.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHP.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHPAbdoulaye Dieng
 
Java uik-chap3-bases java
Java uik-chap3-bases javaJava uik-chap3-bases java
Java uik-chap3-bases javaAmel Morchdi
 
La programmation modulaire en Python
La programmation modulaire en PythonLa programmation modulaire en Python
La programmation modulaire en PythonABDESSELAM ARROU
 
Owf 2013 rii panorama leroy
Owf 2013 rii panorama leroyOwf 2013 rii panorama leroy
Owf 2013 rii panorama leroyPatrick MOREAU
 
Les bases de la programmation en JAVA
Les bases de la programmation  en JAVA   Les bases de la programmation  en JAVA
Les bases de la programmation en JAVA Asmaa BENGUEDDACH
 
CoursAutomatique_machi_d_ostade.pptx
CoursAutomatique_machi_d_ostade.pptxCoursAutomatique_machi_d_ostade.pptx
CoursAutomatique_machi_d_ostade.pptxHassanMoufassih
 
Chap3 programmation modulaire en python
Chap3 programmation modulaire en pythonChap3 programmation modulaire en python
Chap3 programmation modulaire en pythonMariem ZAOUALI
 
ALGORITHMIQUE fonction et procedure.pptx
ALGORITHMIQUE fonction et procedure.pptxALGORITHMIQUE fonction et procedure.pptx
ALGORITHMIQUE fonction et procedure.pptxHathat10
 

Ähnlich wie Algorithme (20)

Généralités sur la notion d’Algorithme
Généralités sur la notion d’AlgorithmeGénéralités sur la notion d’Algorithme
Généralités sur la notion d’Algorithme
 
Logique 1 Logiciel Controle De Gestion
Logique 1 Logiciel Controle De GestionLogique 1 Logiciel Controle De Gestion
Logique 1 Logiciel Controle De Gestion
 
Algorithmique
AlgorithmiqueAlgorithmique
Algorithmique
 
Chapitre 2-Concepts de base de l'algorithme-2024.pdf
Chapitre 2-Concepts de base de l'algorithme-2024.pdfChapitre 2-Concepts de base de l'algorithme-2024.pdf
Chapitre 2-Concepts de base de l'algorithme-2024.pdf
 
Algo inf102 2007
Algo inf102 2007Algo inf102 2007
Algo inf102 2007
 
cours fortran.pptx
cours fortran.pptxcours fortran.pptx
cours fortran.pptx
 
Les bases du langage java
Les bases du langage javaLes bases du langage java
Les bases du langage java
 
TAD (1).pptx
TAD (1).pptxTAD (1).pptx
TAD (1).pptx
 
Conception de base_de_l_algorithme
Conception de base_de_l_algorithmeConception de base_de_l_algorithme
Conception de base_de_l_algorithme
 
.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHP.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHP
 
Java uik-chap3-bases java
Java uik-chap3-bases javaJava uik-chap3-bases java
Java uik-chap3-bases java
 
La programmation modulaire en Python
La programmation modulaire en PythonLa programmation modulaire en Python
La programmation modulaire en Python
 
Owf 2013 rii panorama leroy
Owf 2013 rii panorama leroyOwf 2013 rii panorama leroy
Owf 2013 rii panorama leroy
 
Apprentissage du java
Apprentissage du javaApprentissage du java
Apprentissage du java
 
Les bases de la programmation en JAVA
Les bases de la programmation  en JAVA   Les bases de la programmation  en JAVA
Les bases de la programmation en JAVA
 
CoursAutomatique_machi_d_ostade.pptx
CoursAutomatique_machi_d_ostade.pptxCoursAutomatique_machi_d_ostade.pptx
CoursAutomatique_machi_d_ostade.pptx
 
Turbo1
Turbo1Turbo1
Turbo1
 
Chap3 programmation modulaire en python
Chap3 programmation modulaire en pythonChap3 programmation modulaire en python
Chap3 programmation modulaire en python
 
langage C++
langage C++langage C++
langage C++
 
ALGORITHMIQUE fonction et procedure.pptx
ALGORITHMIQUE fonction et procedure.pptxALGORITHMIQUE fonction et procedure.pptx
ALGORITHMIQUE fonction et procedure.pptx
 

Kürzlich hochgeladen

Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Alain Marois
 
Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Gilles Le Page
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...Faga1939
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxAsmaa105193
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .Txaruka
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSKennel
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSKennel
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSKennel
 
presentation sur la maladie de la dengue .pptx
presentation sur la maladie de la dengue .pptxpresentation sur la maladie de la dengue .pptx
presentation sur la maladie de la dengue .pptxNYTombaye
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSKennel
 
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSKennel
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETMedBechir
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipM2i Formation
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxrababouerdighi
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETMedBechir
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxMartin M Flynn
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeXL Groupe
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptxTxaruka
 

Kürzlich hochgeladen (20)

Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024
 
Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
 
Evaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. MarocpptxEvaluation du systeme d'Education. Marocpptx
Evaluation du systeme d'Education. Marocpptx
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
 
Pâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie PelletierPâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie Pelletier
 
presentation sur la maladie de la dengue .pptx
presentation sur la maladie de la dengue .pptxpresentation sur la maladie de la dengue .pptx
presentation sur la maladie de la dengue .pptx
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
 
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadership
 
Présentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptxPrésentation_ Didactique 1_SVT (S4) complet.pptx
Présentation_ Didactique 1_SVT (S4) complet.pptx
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSET
 
Saint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptxSaint Georges, martyr, et la lègend du dragon.pptx
Saint Georges, martyr, et la lègend du dragon.pptx
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directe
 
DO PALÁCIO À ASSEMBLEIA .
DO PALÁCIO À ASSEMBLEIA                 .DO PALÁCIO À ASSEMBLEIA                 .
DO PALÁCIO À ASSEMBLEIA .
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptx
 

Algorithme

  • 1. COURS ALGORITHME 1. DEFINITIONS Algorithme : Description en langage naturel de la suite des actions effectuées par un programme structuré. Un algorithme est écrit en utilisant un langage de description d’algorithme (LDA). L’algorithme ne doit pas être confondu avec le programme proprement dit (tel que Pascal, C, ..) Algorigramme : Traduction graphique de l’algorithme. Aussi appelé Organigramme. Quelques symboles utilisés pour construire un algorigramme SYMBOLE DESIGNATION SYMBOLE DESIGNATION Symboles de traitement Symboles auxiliaires Symbole général Renvoi Opération sur des Connecteur utilisé à la fin données, instructions, … et en début de ligne pour en assurer la continuité Sous-programme Début, fin ou Portion de programme interruption d’un algorithme Liaison Entrée-Sortie Les différents symboles Mise à disposition ou sont reliés entre eux par enregistrement d’une des lignes de liaison. information Le cheminement va de haut en bas et de gauche à droite. Symbole de test Un cheminement différent Branchement est indiqué à l’aide d’une Décision d’un choix parmi flèche. d’autres en fonction des conditions Syntaxe : Règles d’écriture d’un langage donné. Type de données : Un programme peut-être amené à manipuler différents types de données : - booléen : valeur pouvant être soit Vraie, soit Fausse. - entiers : valeur numériques entières pouvant être signées ou non signées (codées sur un ou plusieurs octets). - réels : valeurs numériques codées avec une mantisse et un exposant. - caractère : octet correspondant à un code ASCII. - chaîne de caractères : ensemble de caractères. - tableau de données : ensemble de données de même type (exemple : tableau d’entiers, tableau de réels). Toutes ces données sont codées sous forme d'octets en mémoire. Constante : donnée manipulée par un programme et ne pouvant être modifiée. Exemple : Constante Pi = 3.141559 ALGO Page 1/8
  • 2. COURS ALGORITHME Variable : donnée manipulée par un programme et pouvant être modifiée. Ce peut être : - une donnée d’entrée ; - le résultat final d’un calcul ; - un résultat intermédiaire de calcul. Identificateur : nom explicite d’une constante, d’une variable ou d’une fonction. Exemples : Conversion_BCD, Résultat, Lettre… Procédures et fonctions : Une procédure ou une fonction effectuent une suite d’actions élémentaires constituant un tout. Une fonction se différencie d’une procédure par le fait qu’elle fournit un résultat. 2. ORGANISATION D’UN PROGRAMME L’algorithme d’un programme est organisé en plusieurs parties : • déclaration des constantes • déclaration des variables • définition des fonctions et procédures • définition du programme principal algorithme L’en-tête nom de l’algorithme ; const liste des constantes ; var Déclaration des constantes, variables listes des variables ; struc liste des structures ; fonc liste des fonctions ; Définition des fonctions et procédures proc liste des procédures ; début action 1 ; action 2 ; . Définition du corps de l’algorithme . . action n ; fin algorithme 2.1 Déclaration des constantes Syntaxe : Constante NomConstante : [Type] = Valeur Constante Pi : Reel = 3.141559 Exemples : Constante NombreLettres : Entier = 10 2.2 Déclaration des variables Syntaxe : Variable NomVariable : [Type] Exemples : Variable Rayon : Reel Variable Compteur : Entier Variable Lettre : Caractere ALGO Page 2/8
  • 3. COURS ALGORITHME 2.3 Définition des fonctions et procédures Les procédures et fonctions peuvent nécessiter éventuellement un ou plusieurs paramètres d’entrée ou de sortie. Un paramètre d’entrée est la référence à une variable manipulée par la procédure ou la fonction. Un paramètre de sortie est une valeur renvoyée par une fonction. Une fonction ou une procédure peut elle-même appeler une ou plusieurs fonctions et procédures. Syntaxe de la déclaration d’une fonction : Fonction NomFonction (NomEntrée1 : [Type], NomEntrée2 : [Type],…) : [TypeDuRésultat] Constante ~ déclaration des constantes locales ~ Variable ~ déclaration des variables locales ~ Début ~ description des actions effectuées par la fonction ~ Fin Syntaxe de l’appel d’une fonction : Variable ← NomFonction (NomEntrée1, NomEntrée2…) Exemple de déclaration de fonction : Fonction Moyenne (Note1 : Reel, Note2 : Reel) : Reel Variable Intermediaire : Reel Début Intermediaire ← Note1 + Note2 Intermediaire ← Intermediaire / 2 Moyenne ← Intermediaire Fin Exemples d’utilisation de la fonction : Afficher (Moyenne(10.5,15)) ou NouvelleNote ← Moyenne (10,5.5) Nota : la déclaration et l’appel d’une procédure ne sont pas développés ici. 2.4 Définition du programme principal Le programme principal consiste en une suite d’opérations élémentaires faisant souvent appel à des fonctions ou procédures. Ces différentes opérations sont mentionnées en utilisant les structures algorithmiques décrites au paragraphe 5. Le programme principal est délimité par les mots-clefs Début et Fin 3. AFFECTATION Une affectation consiste à attribuer une valeur à une variable. La syntaxe générale est la suivante : NomVariable ← Expression « Expression » peut être : · une constante. ......................................................................................Ex : surface ← 40 · une autre variable. .................................................…........Ex : Donnee ← ValeurMemorisee · le résultat d’une fonction. .......................................……....... Ex : resultat ← racine (nombre) · un calcul portant sur ces différents éléments. .……... Ex : surface ← (PI * Carre (Diametre)) / 4 Nota : Un abus d’écriture nous amène parfois à voir le signe = à la place de la flèche. C’est valable normalement pour l’écriture en langage de programmation (Basic compilé, Pascal, …) mais pas dans un algorithme. ALGO Page 3/8
  • 4. COURS ALGORITHME 4. OPERATEURS – CONDITIONS 4.1 Opérateurs Les opérateurs permettent d’élaborer une expression en vue d’effectuer un calcul ou une comparaison. L’usage des parenthèses est vivement conseillé dans le cas d’expressions complexes. Nature Variables utilisées Notation Signification + Addition Opérateurs arithmétiques Entier - Soustraction Réel * Multiplication / Division (réelle) DIV Division entière MOD Reste de la division entière et Fonction ET Opérateurs logiques Booléen ou Fonction OU Entier ouex Fonction OU EXCLUSIF non Fonction NON Opérateur de concaténation Chaîne de caractères + Concaténation Booléen = Egal Entier ≠ Différent Opérateurs de comparaison Réel < Inférieur Caractère > Supérieur Chaîne de caractères ≤ Inférieur ou égal ≥ Supérieur ou égal 4.2 Conditions Dans les structures algorithmiques qui vont suivre, le terme « Condition » peut représenter : · une condition simple : Ex : x 1 0 Indice 3 80 · une condition complexe : Ex : (x > 0) ET ((y > 0) OU (z > 0)) (Indice ≥ 1) ET (Indice ≤ 10) ~ pour 1 ≤ Indice ≤10 ~ 5. LES STRUCTURES ALGORITHMIQUES Les structures algorithmiques sont réparties en 3 catégories : - structures linéaire d'opérations; - structures alternatives (ou conditionnelles) ou de choix : en fonction d'une condition, le programme exécute des opérations différentes; - structures itératives ou répétitives: sous contrôle d'une condition, une séquence d'opérations est exécutée répétitivement. 5.1 Structure linéaire Les actions successives sont mentionnées les unes après les autres. Syntaxe Algorigramme Action1 Action 1 Action2 Action 2 ... ActionN Action N Remarque : dans la suite, la notation « Actions » ou « ActionsN » représentera une succession d’actions comme ci-dessus. Exemple : Calcul d’un produit de 2 nombres Variable a,b : réel ~ opérandes ~ p : réel ~ résultat du produit ~ ALGO Page 4/8
  • 5. COURS ALGORITHME Début Afficher (‘Saisir le nombre a ‘) Saisir (a) Afficher (‘Saisir le nombre b ‘) Saisir (b) p←a*b afficher (p) Fin 5.2 Structures alternatives 5.2.1 Structure SI ... ALORS ... Une condition est testée pour déterminer si l’action ou le groupe d’actions suivant doit être exécuté. Syntaxe Algorigramme Si Condition Alors Actions Condition FinSi Actions Remarque : au lieu de FinSi on écrit aussi fsi Exemple : Calcul d’une racine carrée Variable x: réel ~ opérande ~ r: réel ~ résultat de la racine carrée ~ Début Afficher (‘Saisir le nombre x‘) Saisir (x) Si x > 0 Alors r ← racine (x) afficher (r) FinSi Fin 5.2.2 Structure SI ... ALORS ...SINON ... Une condition est testée pour déterminer quelle action ou quel groupe d’actions doit être exécuté. Syntaxe Algorigramme Si Condition Alors Condition Actions1 Sinon Actions2 Actions1 Actions2 FinSi Exemple : Calcul d’une racine carrée Variables : x: réel ~ opérande ~ r: réel ~ résultat de la racine carrée ~ Début Afficher (‘Saisir le nombre x‘) Saisir (x) Si x < 0 Alors afficher (‘x est négatif’) Sinon r ← racine (x) afficher (r) FinSi Fin ALGO Page 5/8
  • 6. COURS ALGORITHME 5.2.3 Structure de choix multiple Une donnée est comparée successivement à des valeurs constantes : Syntaxe Algorigramme Donnée = Valeur1 Suivant Donnée faire Donnée = Valeur1 : Actions1 Valeur2 Valeur2 : Actions2 Donnée = ... ValeurN ValeurN : ActionsN Sinon Actions1 Actions2 ActionsN ActionsN+1 ActionsN+1 FinSuivant Remarques : la partie « ActionsN+1 » peut ne pas exister. Plusieurs valeurs différentes peuvent être regroupées sur une même ligne si les actions correspondantes sont identiques. Exemple : Affichage de la nature d’un caractère Variable c: caractère ~ caractère saisi au clavier ~ Début Afficher (‘Taper un caractère‘) Saisir (c) Suivant c Faire ‘A’..’Z’ : afficher (‘Lettre majuscule’) ‘a’..’z’ : afficher (‘Lettre minuscule’) ‘0’..’9’ : afficher (‘Chiffre’) Sinon afficher (‘Ni Lettre Ni Chiffre’) FinSuivant Fin 5.3 Structures itératives (ou répétitives) 5.3.1 Structure REPETER ... JUSQUA ... Une action ou un groupe d’actions est exécuté répétitivement jusqu'à ce qu’une condition soit vérifiée. Syntaxe Algorigramme Répéter Actions Actions Jusqu’a Condition Condition Remarque : la vérification de la condition s’effectue après les actions. Celles-ci sont donc exécutées au moins une fois. Exemple : exécution répétitive d’un programme Variables : a,b : réel ~ opérandes ~ p : réel ~ résultat du produit ~ c : caractère ~ réponse de l’utilisateur ~ ALGO Page 6/8
  • 7. COURS ALGORITHME Début Répéter Afficher (‘Saisir le nombre a ‘) Saisir (a) Afficher (‘Saisir le nombre b ‘) Saisir (b) p←a*b afficher (p) afficher (‘encore un calcul ? Non touche N ; Oui autre touche’) saisir (c) Jusqu'à c = ‘N’ Fin 5.3.2 Structure TANT QUE ... FAIRE ... Une action ou un groupe d’actions est exécuté répétitivement tout le temps où une condition est vraie. Syntaxe Algorigramme TantQue Condition Faire Condition Actions FinFaire Actions Remarque : la vérification de la condition s’effectue avant les actions. Celles-ci peuvent donc ne jamais être exécutées. Exemple : Exécution répétitive d’une action Début Tant Que Non (ToucheAppuyée) Faire Afficher (‘Attente’) FinFaire Fin 5.3.3 Structure POUR Indice DE ... A .... FAIRE ... Une action ou un groupe d’actions est exécuté répétitivement un certain nombre de fois : le nombre dépend des valeurs initiale et finale données à la variable « Indice ». Syntaxe Algorigramme Pour Indice De Val1 A Val2 Indice ← Val1 Faire Actions Indice>Val2 FinFaire Actions Indice ← Indice+1 Remarque : les valeurs initiale (Val1) et finale (Val2) sont incluses dans le comptage. Il est éventuellement possible de spécifier un autre pas d’incrémentation (+2,+10,- 1....) ALGO Page 7/8
  • 8. COURS ALGORITHME Exemple : Affichage d’une ligne d’étoiles Variable i : entier ~ compteur de boucles ~ Début Pour i de 1 à 80 Faire Afficher (‘*’) FinFaire Fin Remarque : cette structure algorithmique peut en fait être remplacée par une structure TANT QUE ... FAIRE … Variable i : entier ~ compteur de boucles ~ Début i←1 Tant Que i ≥ 80 Faire Afficher (‘*’) i ← i +1 FinFaire Fin Par la suite, nous nous intéresserons plus particulièrement aux structures algorithmiques du programme principal. ALGO Page 8/8