Chapitre 3 : Procédures et fonctions
En Algorithmique chaque solution partielle donne lieu à un sous-algorithme qui fera partie d'un algorithme complet pour pouvoir être exécuté. 1- Définitions.
Variables (locales et globales) fonctions et procédures
Il faut comprendre ces mots comme “programme algorithmique” indépendant de toute implantation. Variables fonctions
Corrigé Série dexercices n°4 : Les fonctions et procédures
Module : Initiation à l'algorithmique Ecrire une fonction ou procédure qui calcule la partie entière d'un nombre positif. Fonction entiere (x : reel) ...
Atelier 06 : Les fonctions et procédures
Algorithme Fonction_Moyenne. Variables A B : entiers. // Déclaration de la fonction Moyenne. Fonction Moyenne(X : entier
LES FONCTIONS ET LES PROCEDURES I- INTRODUCTION II
algorithmes (programmes). II-. LES FONCTIONS. Une Fonction est une partie d'un algorithme (ou un sous-programme)
Untitled
Il existe deux sortes de sous-algorithmes : les procédures et les fonctions. l'appel de la procédure ou fonction au sein de l'algorithme principal.
TD I- Algorithmique
TD 7 Les procédures et les fonctions. CORRIGE : Les procédures et les fonctions. Exercice I : 1 - Trouver le résultat fourni par l'algorithme :.
Les fonctions et les procédures
Ecrire un algorithme qui lit deux nombres réels a et b ensuite il affiche leur produit en utilisant une fonction. Remarques: 1. Le nombre
Fonctions et Procédures de test [ss] Support de Cours
Mots-Clés Algorithmes paramétrés Fonction
Fonctions et Procédures de test [ss] Support de Cours
Algorithme (nouvelle définition). Ensemble de procédures et de fonctions. Procédure v.s. Fonction. Certains langages de programmation (comme les langages C/C++)
Algorithmique...
Variables (locales et globales),
fonctions et procéduresNicolas Delestre et Michel Mainguenaud
Modifié pour l'ENSICAEN par :
Luc Brun
luc.brun@greyc.ensicaen.frVariables, fonctions, procedures - p.1/32
Plan...
RappelsLes sous-programmesVariables locales et variables globalesStructure d'un programmeLes fonctionsLes procédures
Variables, fonctions, procedures - p.2/32
Vocabulaire...
Dans ce cours nous allons parler de "programme" et de "sous-programme"Il faut comprendre ces mots comme "programme algorithmique"indépendant de toute implantation
Variables, fonctions, procedures - p.3/32
Rappels...
La méthodologie de base de l'informatique est :1. Abstraire
Retarder
le plus longtemps possible l'instant du codage2.Décomposer
diviser chacune des difficultés que j'examinerai en autant de parties qu'il se pourrait et qu'il serait requis pour les mieux résoudre." Descartes3. Combiner
Résoudre le problème par
combinaison d'abstractionsVariables, fonctions, procedures - p.4/32
Par exemple...
Résoudre le problème suivant :
Écrire un programme qui affiche en ordre croissant les notes d'une promotion suivies de la note la plus faible, de la note la plus élevée et de la moyenne Revient à résoudre les problèmes suivants :Remplir un tableau de naturels avec des notes saisies par l'utilisateurAfficher un tableau de naturelsTrier un tableau de naturel en ordre croissantTrouver le plus petit naturel d'un tableauTrouver le plus grand naturel d'un tableauCalculer la moyenne d'un tableau de naturels
Chacun de ces sous-problèmes devient un nouveau problème à résoudreSi on considère que l'on sait résoudre ces sous-problèmes, alors on sait
"quasiment" résoudre le problème initialVariables, fonctions, procedures - p.5/32
Sous-programme...
Donc écrire un programme qui résout un problème revient toujours à écriredes sous-programmes qui résolvent des sous parties du problème initialEn algorithmique il existe deux types de sous-programmes :
Les fonctions, Les procédures. Un sous-programme est obligatoirement caractérisé par un nom (unidentifiant) uniqueLorsqu'un sous programme a été explicité (on a donné l'algorithme), sonnom devient une nouvelle instruction, qui peut être utilisé dans d'autres(sous-)programmesLe (sous-)programme qui utilise un sous-programme est appelé(sous-)programme appelant
Variables, fonctions, procedures - p.6/32
Règle de nommage...
Nous savons maintenant que les variables, les constantes, les types définis par l'utilisateur (comme les énumérateurs) et que les sous-programmes possèdent un nomCes noms doivent suivre certaines règles :Ils doivent être explicites (à part quelques cas particuliers, comme par exemple les variablesietjpour les
boucles)Ils ne peuvent contenir que des lettres et des chiffresIls commencent obligatoirement par une lettreLes variables et les sous-programmes commencent toujours par une minusculeLes types commencent toujours par une majusculeLes constantes ne sont composées que de majusculesLorsqu'ils sont composés de plusieurs mots, on utilise les majuscules (sauf pour les constantes) pour séparer
les mots (par exemple JourDeLaSemaine)Variables, fonctions, procedures - p.7/32
Les différents types de variable...
Définitions :
Laportéed'une variable est l'ensemble des sous-programmes où cette variable est connue (les instructions de ces sous-programmes peuvent utiliser cettevariable)Une variable définie au niveau du programme principal (celui qui résout leproblème initial, le problème de plus haut niveau) est appelée
variable globale Sa portée est totale :toutsous-programme du programme principal peut utiliser cettevariable Une variable définie au sein d'un sous programme est appelée variable locale La portée d'un variable locale est uniquement le sous-programme qui la déclare Lorsque le nom d'une variable locale est identique à une variable globale, la variable globale est localement masquée Dans ce sous-programme la variable globale devient inaccessibleVariables, fonctions, procedures - p.8/32
Structure d'un programme...
Un programme doit suivre la structure suivante :
Programmenom du programme
Définition des constantes
Définition des types
Déclaration des variables globales
Définition des sous-programmes
début instructions du programme principal finVariables, fonctions, procedures - p.9/32
Les paramètres...
Un paramètre d'un sous-programme est une variable locale particulière qui est associée à une variable ou constante (numérique ou définie par le programmeur) du (sous-)programme appelant :Puisque qu'un paramètre est une variable locale, un paramètre admet un typeLorsque le (sous-)programme appelant appelle le sous-programme il doit indiquer la variable (ou la
constante), de même type, qui est associée au paramètre Par exemple, si le sous-programmesqrpermet de calculer la racine carrée d'un réel:Ce sous-programme admet un seul paramètre de type réel positifLe (sous-)programme qui utilisesqrdoit donner le réel positif dont il veut calculer la racine carrée, cela peut
être :
une variable, par exempleaune constante, par exemple5.25Variables, fonctions, procedures - p.10/32
Les passage de paramètres...
Il existe trois types d'association (que l'on nommepassage de paramètre) entre le paramètre et la variable (ou la constante) du (sous-)programme appelant :Lepassage de paramètre en
entréeLepassage de paramètre en
sortieLepassage de paramètre en
entrée/sortieVariables, fonctions, procedures - p.11/32
Le passage de paramètres en entrée...
Les instructions du sous-programme ne
peuvent pas modifier l'entité (variable ou constante) du (sous-)programme appelant En fait c'est la valeur de l'entité du (sous-) programme appelant qui est copiée dans le paramètre (à part cette copie il n'y a pas de relation entre le paramètre etl'entité du (sous-)programme appelant)C'est leseulpassage de paramètre qui admet l'utilisation d'une constante
Par exemple :
le sous-programmesqrpermettant de calculer la racine carrée d'un nombreadmet un paramètre en entréele sous-programmeécrirequi permet d'afficher des informations admet n
paramètres en entréeVariables, fonctions, procedures - p.12/32
Le passage de paramètres en sortie...
Les instructions du sous-programme
affectent obligatoirement une valeur à ce paramètre (valeur qui est donc aussi affectée à la variable associée du (sous-)programme appelant) Il y a donc une liaison forte entre le paramètre et l'entité du (sous-) programme appelant C'est pour cela qu'on ne peut pas utiliser de constante pour ce type de paramètre La valeur que pouvait posséder la variable associée du (sous-)programme appelant n'est pas utilisée par le sous-programmePar exemple :
le sous-programmelirequi permet de mettre dans des variables des valeurs saisies par l'utilisateur admet n paramètres en sortieVariables, fonctions, procedures - p.13/32
Le passage de paramètres en entrée/sortie...Passage de paramètre qui combine les deux précédentesA utiliser lorsque le sous-programme doit
utiliser et/ou modifier la valeur de la variable du (sous-)programme appelant Comme pour le passage de paramètre en sortie, on ne peut pas utiliser de constantePar exemple : le sous-programmeéchangerqui permet d'échanger les valeurs de deux variablesVariables, fonctions, procedures - p.14/32
Les fonctions...
Les fonctions sont des sous-programmes admettant des paramètres et retournant un seulrésultat (comme les fonctions mathématiques y=f(x,y,...)les paramètres sont en nombre fixe (≥0)une fonction possède un seul type, qui est le type de la valeurretournéele passage de paramètre est
uniquement en entrée : c'est pour cela qu'il n'est pas précisé lors de l'appel, on peut donc utiliser comme paramètre des variables, des constantes mais aussi des résultats de fonction la valeur de retour est spécifiée par l'instructionretourner Généralement le nom d'une fonction est soit un nom (par exemple minimum), soit une question (par exempleestVide)Variables, fonctions, procedures - p.15/32
Les fonctions...
On déclare une fonction de la façon suivante : fonctionnom de la fonction(paramètre(s) de la fonction) :type de la valeur retournéeDéclarationvariable locale 1 : type 1; ...
début instructions de la fonction avec au moins une fois l'instructionretourner finOn utilise une fonction en précisant son nom suivi des paramètres entreparenthèses Les parenthèses sont toujours présentes même lorsqu'il n'y a pas de paramètreVariables, fonctions, procedures - p.16/32
Exemple de déclaration de fonction...
fonctionabs(unEntier :Entier) : Entier début siunEntier≥0alors retournerunEntier finsi retourner -unEntier fin Remarque : Cette fonction est équivalente à : fonctionabs(unEntier :Entier) : EntierDéclarationtmp:Entier
début siunEntier≥0alors tmp←unEntier sinon tmp←-unEntier finsi retournertmp finVariables, fonctions, procedures - p.17/32Exemple de programme...
Programmeexemple1
Déclarationa :Entier, b :Naturel
fonctionabs(unEntier :Entier) : NaturelDéclarationvaleurAbsolue :Naturel
début siunEntier≥0alors valeurAbsolue←unEntier sinon valeurAbsolue←-unEntier finsi retournervaleurAbsolue fin débutécrire("Entrez un entier :")
lire(a) b←abs(a)écrire("la valeur absolue de ",a," est ",b)
finLors de l'exécution de la fonction
abs, la variableaet le paramètre unEntiersont associés par un pas- sage de paramètre en entrée : La valeur deaest copiée dansunEn- tierVariables, fonctions, procedures - p.18/32
Un autre exemple...
fonctionminimum2(a,b :Entier) : Entier début sia≥balors retournerb finsi retournera fin fonctionminimum3(a,b,c :Entier) : Entier début retournerminimum2(a,minimum2(b,c)) finVariables, fonctions, procedures - p.19/32
Les procédures...
Les procédures sont des sous-programmes qui ne retournentaucunrésultatPar contre elles admettent des paramètres avec des passages :
en entrée, préfixés parEntrée(ouE)en sortie, préfixés parSortie(ouS)en entrée/sortie, préfixés parEntrée/Sortie(ouE/S)
Généralement le nom d'une procédure est un verbeVariables, fonctions, procedures - p.20/32
Les procédures...
On déclare une procédure de la façon suivante : procédurenom de la procédure(Eparamètre(s) en entrée;Sparamètre(s)
en sortie;E/Sparamètre(s) en entrée/sortieDéclarationvariable(s) locale(s)
début instructions de la procédure fin Et on appelle une procédure comme une fonction, en indiquantquotesdbs_dbs1.pdfusesText_1[PDF] les fonctions numériques cours pdf
[PDF] les fonctions numériques cours tronc commun
[PDF] les fondamentaux de l'assurance pdf
[PDF] les fondamentaux du management de projet pdf
[PDF] les fondamentaux du taux de change
[PDF] les fondements du commerce international economie
[PDF] les fondements du commerce international pdf
[PDF] les fondements du contrôle de gestion henri bouquin pdf
[PDF] les fondements du marketing pdf
[PDF] les forces exercices corrigés
[PDF] les forces physique 3eme
[PDF] les formes d'énergie et leur transformation
[PDF] les formes d'impots au niger
[PDF] les formes de tourisme au maroc pdf