Leçon 1 Chapitre 5:Les sous-programmes déclarés au même niveau que le sous-
En analyse: programme considéré, par le sous programme qui
L'analyse modulaire DEF PROC nom(paramètres formels: type) englobent les sous-programmes considéré. S L.D.E O.U I-Introduction: Résultat= II- Les paramètres et leur mode Afin de faciliter la résolution d'un problème traitement de transmission: complexe et/ou de grande taille, on doit le Fin nom On distingue deux types de paramètres: décomposer en sous problèmes indépendants et 1-Les paramètres formels: qui figurent dans la de taille réduite. En algorithme: définition de la procédure. 0) DEF PROC nom (paramètres formels: type) II-L'analyse modulaire: 2-Les paramètres effectifs: qui figures dans 1) Traitement ➔ 1-Définition: l'appel de la procédure et qui sont manipulés par 2) FinNom L’analyse modulaire consiste à diviser un problème celle-ci. en sous problème de difficultés moindres. ces en Pascal: Remarque: Les paramètres formels et les paramètres derniers sont aussi soumis à cette division jusqu'à effectifs doivent s'accorder de point de vue nombre et Procedure nom (paramètres formels: type) ; ordre et leurs types doivent être identique ou compatible, ce qu’on arrive à un niveau abordable de difficulté. Déclaration des variables locales; selon le mode de passage des paramètres. ➔ 2-Intérêts : Begin 3-Mode de passage des paramètres: il existe ✔ Plus d’organisation en séparant les difficultés et les taches. Traitement; deux modes de passage des paramètres: le mode ✔ S’occuper d’un seul problème à la fois. End; par valeur et le mode par variable. Pour le cas de la ✔ En cas d’erreur la division en module Appel de la procédure: fonction, nous définissions seulement le mode par permet de savoir quel module à corriger Proc nom_procédure (paramètres effectifs) valeur. ✔ Plus facile à faire évoluer. L'appel d'une procédure doit se trouver dans une ➔ Mode de passage par valeur: ✔ Permet d’éviter la répétition d’un même -Permet au programme appelant de transmettre instruction d'appel et ne peut pas être dans une traitement dans un programme. une valeur au sous-programme appelé. expression comme c'est le cas d'une fonction ➔ Notion de sous-programme: -Le transfert d'information est effectué dans un Remarque: Il est possible de définir un sous-programme seul sens : du programme appelant vers le sous- C’est la décomposition modulaire d'un programme sans paramètres. La communication avec l'appelant se en plusieurs sous-programmes. Un programme appelé. sous produit grâce aux ressources (objets) communes programme est appelé aussi une procédure ou une partagées entre l'appelé et l'appelant. -Au moment de l'appel, la valeur du paramètre fonction. C'est une portion de texte analogue à un effectif est copiée dans la variable locale programme, déclaré dans un programme ou dans Leçon 3 désignée par les paramètres formels correspondants. un sous programme et dont la partie instruction Déclaration, accès aux objets Remarque : Toute modification du paramètre peut être exécutée plusieurs fois au cours du traitement du programme grâce à des appels. et mode de transmission formel est sans conséquence sur le paramètre ➔ Exemple d'analyse modulaire: effectif I-Déclaration et accès aux objets ➔ Mode de passage par variable: étude de fonction mathématique. 1-Les objets locaux: tous les objets (constantes, -Le passage de paramètres par variables permet Leçon 2 types, variables et sous-programme) déclarés dans au programme appelant de transmettre une Les procédures un sous-programme sont dits locaux à celui-ci. valeur au sous-programme appelé et 1-Définition: 2-Les objets globaux: les objets utilisés dans un inversement. -Dans l'entête de la procédure, on doit précéder Les procédures sont des sous-programmes qui sous-programme et non déclarés dans celui-ci sont les paramètres formels transmis par variable par peuvent avoir plusieurs résultats des objets globaux déclarés ailleurs. le mot clé VAR. 2-Vocabulaire et syntaxe: 3-Accès aux objets: tous les objets locaux d'un Remarque : Toute modification du paramètre formel Déclaration: sous-programme sont inaccessible: par le entraîne automatiquement la modification de la valeur programme principal, par les sous-programmes du paramètre effectif. Leçon 4 Remarques: Exemple: y FN f(x) Les fonctions L'appel de la fonction se fait à l'aide de FN ✔ Il doit y avoir nécessairement dans la Le préfixe FN est ajouté devant le nom de la partie instruction de la fonction au moins 1-Définition: fonction que nous avons crée; ça nous une affectation explicite ayant Une fonction est un sous-programme qui renvoie aidera à nous rappeler qu'il faudra analyser. l'identificateur de la fonction à gauche du une valeur de type simple, ce type sera le type de symbole d'affectation. la fonction. F est l'appelant. 4-Définition d'une fonction: 2-Syntaxe: Dans l'analyse : Fonction ✔ Lors de l'utilisation d'une fonction, il faut: DEFFN nom f(X:entier):type_entier {x paramètre formel} Déclaration d'une fonction: ✔ Spécifier le type de la fonction X est déjà déclarés au niveau de l'entête de En analyse: la fonction. ✔ Déclarer, si nécessaire, une variable DEFFN nom (paramètres formels: type): Résultat F est une fonction ayant un seul paramètre locale de même type que la fonction (pour formel x. Il est possible qu'une fonction ait faire les calcules intermédiaires) S L.D.E O.U plusieurs paramètres. ✔ Affecter le résultat de calcul de la fonction Résultat= Les variables déclarés dans la fonction sont au nom de la fonction, obligatoirement, Nom résultat calculé avant la fin du bloc. appelés variables locales à la fonction f. Fin nom 5-Mode de passage: Une fonction est constituée de trois partie: 1) La partie entête de la fonction ou nous Pour le cas de la fonction, nous définissant En algorithme: trouvons son nom qui est suivit entre parenthèses seulement le mode de passage par valeur. 0) DEFFN nom (paramètres formels: type) : Type_Resultat des paramètres en entrée et de leur mode de Remarques: 1) Traitement passage, puis du type du résultat. 2) Nom résultat calculé Dans la partie instruction de la fonction, les 2) La partie déclaratives ou tous les objets locaux paramètres formels transmis par valeur ne 3) FinNom de la fonction sont déclarés. doivent en aucun cas se trouver à gauche 3) La partie instruction ou nous trouvons les du symbole d'une instruction d'affectation. En Pascal: instructions propres à la fonction. Il est bon de Même si par erreur la valeur du paramètre Function nom (paramètres formels: type) : Type_Resultat; rappeler que ces instructions sont exécutées à la formel transmis par valeur est modifié dans Déclaration des variables locales; demande de l'appelant par une instruction d'appel. l'appelé au retour après exécution, les Begin paramètres effectifs gardent la même valeur Traitement; 3-Transmission du résultat de la fonction: original transmise lors de l'appel. Nom:=RésultatCalculé; ✔ Une fonction possède un type, c'est celui End; du résultat quelle calcule. En effet, au niveau de l'appelé on manipule Appel de la fonction: qu'une copie. Analyse ✔ On appelle une fonction en utilisant simplement son nom suivi de la liste des Un identificateur peut cacher un autre. (un YFN f(x) ( x est un paramètre effectif) paramètres effectifs séparé par des virgule objet local à un sous programme a le même (,) nom qu'un objet global (homonyme)). TDO: L'ordre des sous programmes est important, objet type/nature rôle ✔ Un appel de fonction figure obligatoirement lorsque un sous programme fait appel à un dans une expression sous forme suivante: f Fonction f(x)=......... autre, alors ce dernier doit être définit avant. V FN nom de la fonction (liste des paramètres effectifs)