Pages - Menu

Pages

Cours Algorithme : Les procedures algo avec des exemples

Objectifs : - Définir une procédure.
                  - Avantages des procédures.
                  - Savoir utiliser une procédure.


I - GÉNÉRALITÉS.

Lors de la conception d’un programme résolvant un problème général, il est nécessaire de décomposer le problème en différent sous-problèmes moins complexe à résoudre : Démarche ascendante.

Ces différents sous-problèmes peuvent être résolus grâce à des sous-programmes particuliers : Procédures et fonctions.

1°) Avantages des procédures.

  • Les procédures ou fonctions permettent de ne pas répéter plusieurs fois une même séquence d’instructions au sein du programme.

  •  La mise au point du programme est plus rapide en utilisant des procédures et des fonctions. En effet, elle peut être réalisée en dehors du contexte du programme.

  • Une procédure peut être intégrée à un autre programme, ou elle pourra être rangée dans une bibliothèque d’outils ou elle pourra être utilisée par n’importe quel programme.

2°) Utilisation des procédures.

Lors de la conception d’un programme deux aspects apparaissent :
  • La définition de la procédure ou fonction.
  • L’appel de la procédure ou fonction au sein du programme.

L’écriture de la procédure ou fonction s’effectue en fonction de paramètres formels utilisés dans la conception de celle-ci.

Par contre au moment de l’utilisation de la procédure ou fonction, on associera de véritables valeurs à ces paramètres grâce à des paramètres d’appel ou paramètres effectifs.




3°) La transmission des paramètres.

Lors de l’appel de la procédure ou fonction les paramètres globaux sont mis en correspondance avec les paramètres locaux.

Il existe 3 statuts possibles pour un paramètre global :

  • Paramètre Entrée : La valeur du paramètre local est récupérée dans le paramètre global correspondant. Le paramètre local n’est pas modifié par la procédure.

  • Paramètre Sortie : Le paramètre local est destiné à recevoir un résultat par l’intermédiaire du paramètre global correspondant. 
  • Paramètre Entrée-Sortie : La valeur du paramètre local est utilisée par la procédure.
 Le paramètre local est modifié par la valeur du paramètre global associé, après exécution de la procédure.


II - LES PROCEDURES

1°) Définition.

Une procédure est destinée à réaliser une ou plusieurs actions. Elle peut par l’intermédiaire des paramètres globaux (Sortie ou Entrée-Sortie), restituer aucune ou plusieurs valeurs.

2°) Déclaration d’une procédure.


Procédure Nom (Liste des paramètres globaux de transmission)
Paramètres Entrée Var1 :Type1
Paramètre Sortie Var2 :Type2

Var
    [Déclaration des variables locales]
Début
    Liste des instructions de la procédure
Fin

Exemple : Ecrire une procédure permettant de calculer la somme de deux entiers A et B.
----------------------------------------------------
Procédure Somme(A,B,S)

Paramètres Entrée A,B :entier
Paramètre Sortie S : Entier






-----------------------------------------------------
Remarques :
  • A, B, S sont des paramètres de transmission globaux.
  • Entrée : Les valeurs de A et B sont connues à l’appel de la procédure, mais ne seront pas modifiés par la procédure.
  • Sortie : S désigne le résultat restitué par la procédure.

ALGO Exemple
--------------------------------------------------------------------
Var
    X, Y : Entier
SOM :Entier
Appel de la procédure Somme. Lorsque l’on insère une fonction ou une procédure dans l’algo principal, il faut veiller à déterminer les variables de la fonction ou procédure dans le même ordre que ses paramètres. Ici, X, Y et SOM remplacent A, B et S  de la procédure.
Début
Afficher'' Tapez le premier nombre''
Saisir X
Afficher'' Tapez le deuxième nombre ''
Saisir Y
Somme(X,Y,SOM)               
Afficher'' La somme est de : '', SOM

Fin
--------------------------------------------------------------------

Remarques :
  • X,Y,SOM : Paramètres locaux.
  • Les variables utilisées par la procédure et le programme appelant n’ont pas les mêmes noms, mais elles sont de même type et une correspondance existe entre ces deux types de variables.

Exemple 2 : Ecriture d’une procédure qui retourne la valeur minimale et maximale pour une suite de 3 nombres entiers a, b, c.
--------------------------------------------------------------------
Procédure MiniMaxi(a,b,c,Min,Max)
Entrée a,b,c :entier
Sortie Min,Max :entier













 

--------------------------------------------------------------------
 
Remarques :

  • A,b,c,Min,Max sont des paramètres de description de la procédure ou paramètres globaux.
  • Paramètres Entrée a,b,c : les valeurs de a,b,c doivent être connues avant l’exécution de la procédure mais leurs contenus ne seront pas modifiés par la procédure.
  • Paramètres Sortie Min,Max désignent les résultats restitués par la procédure.
  • Appel de la procédure au sein d’un algorithme.

Algo Exemple

--------------------------------------------------------------------
Var
Minimun, Maximun :entier

Début

MiniMaxi(10,24,7,Minimun, Maximun)    -------------------------> Appel de la procédure
Afficher('' Minimun= '',Minimun,'' Maximun='',Maximun)

Fin.

10,24,7 : Valeurs effectives des paramètres a,b,c.
Minimun, Maximun :Paramètres effectifs résultats.
--------------------------------------------------------------------



         

Aucun commentaire:

Enregistrer un commentaire