Fonction et procedure en pascal

Fermé
SORYCHERIF Messages postés 8 Date d'inscription samedi 21 mars 2015 Statut Membre Dernière intervention 9 mai 2017 - 21 mars 2015 à 15:42
ayoubsei Messages postés 2 Date d'inscription vendredi 8 mai 2015 Statut Membre Dernière intervention 8 mai 2015 - 8 mai 2015 à 10:31
salut,je voudrais savoir si c'est possible de déclarer une procédure dans une fonction.Exemple:j'ai une fonction de recherche alors je voudrais ecrire une procédure me permettant d'afficher d'afficher toutes les informations concernant l'élément recherche si sa existe biensur
A voir également:

2 réponses

KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 3 020
Modifié par KX le 21/03/2015 à 15:56
Bonjour,

Pascal autorise ce genre d'écriture, il faut alors l'écrire après la déclaration des variables, ce qui permet d'y accéder dans la fonction/procédure.

Exemple :

program SansTitre;

procedure boucler(a:integer; b:integer);

    var i:integer;

    procedure afficher();
    begin
       writeln(i);
    end;

begin

    for i:=a to b do
        afficher();

end;

begin
    boucler(1,5);
end.

Cependant je te déconseille ce genre d'écriture, il vaut mieux faire deux procédures/fonctions bien distinctes (non imbriquées), quitte à passer en paramètres les différentes variables.

program SansTitre;

procedure afficher(n:integer);
begin
    writeln(n);
end;

procedure boucler(a:integer; b:integer);

    var i:integer;

begin

    for i:=a to b do
        afficher(i);

end;

begin
    boucler(1,5);
end.

La confiance n'exclut pas le contrôle
0
ayoubsei Messages postés 2 Date d'inscription vendredi 8 mai 2015 Statut Membre Dernière intervention 8 mai 2015
8 mai 2015 à 10:31
oui vous pouvez le faire après la déclaration de la fonction mais vous ne pouvez pas l'executer dans la fonction tu peux la declarer et après la fin de fontion tu peux declarer la procedure et l'executer
0