I. Définitions 
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
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). 
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
Algorigramme 
 | 
  
Traduction graphique de
  l’algorithme. Aussi appelé Organigramme.  
  | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
II. Structure d’un programme  
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
1. L’en-tête  
 | 
  
Algorithme nom de l’algorithme ; 
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
2. Déclaration des constantes, variables 
 | 
  
Const 
           Listes des constantes ; 
Var 
            Listes des variables ; 
Struct 
            Listes des structures ; 
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
3. Définition des fonctions et procédures 
 | 
  
Fonction 
           Listes des
  fonctions ; 
Procédure 
            Listes des
  procédures ; 
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
4. Définition du corps de l’algorithme 
 | 
  
Début 
           action 1 ;  
           action 2 ;  
                 .  
                 . 
                 . 
           action n ; 
Fin 
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
II.1. Type de données: 
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
booléen : valeur pouvant être soit vraie, soit fausse. 
entier : valeur numérique entière. 
réel : valeur numérique codée 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. 
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
II.2. Syntaxe de déclaration: 
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Déclaration
  des constantes : 
 | 
  
Const NomConstante : [Type] = Valeur ; 
Exemple : Const
  Pi=3.141559 ; 
                  
  Const NombreLettres :
  Entier = 10 ; 
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
Déclaration
  des variables : 
 | 
  
Var NomVariable : [Type] ; 
Exemple :
  Var Lettre : Caractère ; 
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
Définition
  des fonctions et des procédures : 
 | 
  
Fonction NomFonction
  (NomV1 : [Type], NomV2 : [Type],…) : [TypeDeRetour] ; 
Const ~ déclaration des constantes locales ~ Var ~ déclaration des variables locales ~ Début ~ description des actions effectuées par la fonction ~ Fin 
Exemple : 
Fonction Moyenne
  (Note1 : Réel, Note2 : Réel) : Réel ;  
Var Intermediaire : Réel ; Début Intermediaire <-- Note1 + Note2 ; Intermediaire <-- Intermediaire / 2 ; Moyenne <-- Intermediaire ; Fin 
Les procédures : Une fonction se différencie d’une procédure par le fait
  qu’elle fournit un résultat.  
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
Syntaxe de
  l’appel d’une fonction : 
 | 
  
Variable
  <-- NomFonction (NomEntrée1, NomEntrée2,…) ;  
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
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 .  
·   Le programme principal est délimité par les
  mots-clefs Début et Fin. 
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
III. Les opérateurs : 
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
  | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
IV. 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. 
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
IV.1. Structure linéaire : 
 | 
  
Les actions successives
  sont mentionnées les unes après les autres.  
Syntaxe :    
Action1 Action2 ... ActionN 
Exemple : Calcul d’un produit de 2
  nombres 
Algorithme
  Calcul
  du produit ; 
Var a,b : réel ; p : réel; 
Début  
Afficher (‘Saisir le nombre a ‘) ; Saisir (a) ; Afficher (‘Saisir le nombre b ‘) ; Saisir (b) ; p <-- a * b ; afficher (p) ; 
Fin 
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
IV.2. Structure alternatives : 
 | 
  
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 :             
Si Condition   Alors  
Actions  
FinSi 
Exemple : Calcul d’une racine carrée 
 Algorithme Racine
  carrée ; 
Var  
        x: réel ; 
        r: réel ; 
Début  
        Afficher (‘Saisir le
  nombre x‘) ; 
        Saisir (x) ; 
        Si x > 0 Alors  
                r <-- racine
  (x) ; 
                afficher (r) ; 
        FinSi  
Fin 
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
Structure SI ... ALORS ...SINON
  ... 
Une condition est testée
  pour déterminer quelle action ou quel groupe d’actions doit être exécuté.  
Syntaxe :            
Si Condition  Alors  
Actions1  
  Sinon  
Actions2  
FinSi  
![]() 
Exemple : Calcul d’une racine carrée 
Algorithme Calcul racine carrée ; 
Var 
        x: réel ;  
        r: réel ;  
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 
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Structure de
  choix multiple  
Une donnée est comparée successivement à des valeurs constantes :  
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Syntaxe 1 :        
Suivant Donnée faire  
Valeur1 : Actions1  
Valeur2 : Actions2  
...  
ValeurN : ActionsN  
Sinon   
ActionsN+1  
FinSuivant  
 | 
  
Syntaxe 2 :        
Cas Donnée  
Valeur1 : Actions1  
Valeur2 : Actions2  
...  
ValeurN : ActionsN  
Sinon   
ActionsN+1  
FinCas 
 | 
  
Syntaxe 3 :        
Si Donnée=Valeur1 alors 
             Actions1  
     Sinon Si Donnée=Valeur2 alors 
            Actions2  
...  
    Sinon Si Donnée=ValeurN alors 
            ActionsN 
Sinon   
    ActionsN+1  
    FinSi 
    FinSi 
     ... 
     FinSi 
FinSi 
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() 
Remarques : la partie « ActionsN+1 » peut ne pas exister. 
                        Toutes
  ces syntaxes sont équivalentes. 
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 
Algorithme Affichage nature ; 
Var 
        c: caractère ; 
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  
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
IV.3. Structure itératives (ou répétitives) 
 | 
  
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 :  
Répéter   
Actions  
Jusqu’à 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 
Algorithme exécution répétitive ; 
Var 
        a,b : réel ; 
        p : réel ;  
        c : caractère ;  
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 
 | 
 |||||||||||||||||||||||||||||||||||||||||||||||||||||
Structure
  TANT QUE ... FAIRE ... 
TantQue Condition  
Faire   
Actions  
FinFaire /FinTantque 
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. 
Algorithme Exécution répétitive d’une
  action ; 
Début  
        Tant
  Que Non (ToucheAppuyée)  
               
  Faire  
                        Afficher (‘Attente’) ; 
             
    FinFaire  
Fin 
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 : 
Pour Indice De
  Val1 A Val2  
Faire  
Actions  
FinFaire / Fin
  pour 
Remarques : 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....)  
Exemple :
  Affichage d’une ligne d’étoiles 
Algorithme
  Affichage d’une ligne d’étoiles ; 
Var 
        i : entier ; 
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 …  
Var 
        i : entier ;  
Début  
        i <-- 1  
        Tant
  Que i ≥ 80  
        Faire
   
                Afficher (‘*’) ; 
                i <-- i +1 ; 
        FinFaire  
 | 
 ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Essentiel I : Introduction à l'algorithmique
Inscription à :
Publier les commentaires (Atom)













0 commentaires:
Enregistrer un commentaire