Une procédure peut elle être utilisée comme fonction?

Résolu/Fermé
cindy - 27 mai 2013 à 14:09
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 - 28 mai 2013 à 12:36
Bonjour,
je veux savoir si le programme marche si on utilise une procédure au lieu d'une fonction.
merci



A voir également:

1 réponse

[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 1 092
27 mai 2013 à 14:14
Salut cindy,

Si le code est conçu pour récupérer une valeur d'une fonction, et que tu modifies la fonction pour en faire une procédure, tu auras certainement une erreur de compilation, sauf à faire d'autres modifications dans le code.

Si tu veux dire autre chose, donne un exemple de code, car ta question n'est pas claire.


Dal
0
merci pour ta réponse.
exemple:
on affecte t ou f a une variable si on utilise pour cela une procédure, le résultat n'est pas affiché , mais stocké dans la procédure,non? donc est il faisable qu il peut être affiché?
0
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 1 092
Modifié par [Dal] le 27/05/2013 à 15:33
Tu peux utiliser une procédure, qui si elle comporte le mot clef "var" devant son paramètre d'appel, va passer une référence et non la valeur de la variable, et te permettra de modifier le contenu de la variable à partir de ta procédure, sans qu'il soit nécessaire que la variable soit globale.

Voilà un exemple :

program project1;

procedure Doubler(var n: Integer);
begin
  n := n * 2;
end;

procedure ProcedureAppelantDoubler;
var x: Integer;
begin
  x := 10;
  writeln('valeur de x initiale : ', x);
  Doubler(x);
  writeln('valeur de x après l''appel à la procédure : ', x);
end;

begin
  ProcedureAppelantDoubler;
  readln;
end.

Dal
0
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 1 092
Modifié par [Dal] le 27/05/2013 à 16:13
Dans cet exemple, la variable x est locale à la procédure "ProcedureAppelantDoubler". Poutant, la procédure "Doubler" arrive bien à la modifier, car la définition de son paramètre d'appel comporte le mot clef "var".


Dal
0
merci beaucoup ça m'aide trop!
cindy
0
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 1 092
28 mai 2013 à 12:36
cool :-)
0