Vous êtes sur la page 1sur 4

Les fonctions en Pascal

Rappel programmation descendante


La programmation algorithmique est une programmation hiérarchisée descendante par blocs.

Schéma figurant un problème décomposé au final en (nq-n1+1) blocs (de An1 à Anq).

La majorité des langages de programmation est capable de représenter cette décomposition hiérarchique à l'aide
de blocs de programme notés aussi des sous-programmes.

Un bloc comporte donc des données locales, du code (instructions ou corps du bloc), des données d'entrée
et/ou des données de sortie (permettant les échanges d'informations entre les blocs) :

http://krim666.mylivepage.com/
L'exemple ci-dessous représente trois blocs B1, B2 et B3 échangeant des informations (en fait chacun calcule la
somme des deux entiers qu'il reçoit en entrée et renvoie leur somme :

Le bloc B1 reçoit en entrée 12 et 15 et renvoie la somme 12+15 = 27 vers le bloc B2, la valeur 27 devient une
donnée d'entrée pour le bloc B2 qui reçoit comme autre entrée la valeur 10. Le bloc B2 renvoie vers le bloc B3 le
résultat 27+10 = 37 etc...
Nous remarquons que chaque bloc est indépendant des autres blocs. La seule liaison qui intervienne ici se situe
dans le passage des données d'un bloc vers un autre bloc. Le code et les données locales d'un bloc fixé sont
inaccessibles aux autres blocs.
En pascal les blocs sont implémentés par des procédures cf. ci-dessous :

Bloc B (2 entrées + 1 sortie)

La ligne : "procedure B ( x , y : integer ; var t : integer) ; "se dénomme l'en-tête de la procédure.


En pascal les blocs peuvent être implémentés aussi par des fonctions uniquement lorsqu'il n'y a qu'une donnée
de sortie (un seul résultat) cf. ci-dessous :

http://krim666.mylivepage.com/
Bloc B (2 entrées + 1 sortie)

Une fonction est un bloc de programme qui réalise des traitements et renvoie une valeur unique, c'est une
procédure ne possédant qu'un seul élément de sortie (appelé paramètre)..

La ligne : "function B ( x , y : integer ) : integer ; "se dénomme l'en-tête de la fonction.

L'exercice proposé
L'assistant vous propose 8 exercices sous formes de petit programme pascal contenant une fonction et son appel
dans le programme principal. Vous devez trouver la bonne en-tête de fonction à associer à l'appel de fonction dans
le corps du programme principal. Vous choisissez un des exercices dans la liste :

Pour pouvoir compléter l'en-tête de la fonction "Function Fonc ( ? ) : ?", vous pouvez vous servir de l'interface de
saisie syntaxiquement dirigée ci-dessous :

http://krim666.mylivepage.com/
Les différentes syntaxes possibles se trouvent dans des listes déroulantes :

Vous sélectionnez et changez chaque partie de l'en-tête autant de fois que nécessaire :

L'assistant vous indique à chaque choix le programme que vous venez de construire :

Une fois votre choix arrêté, vous testez votre programme, l'assistant renvoie une réponse visuelle et auditive.

http://krim666.mylivepage.com/

Vous aimerez peut-être aussi