Procedure en pascal
gotomtom
Messages postés
55
Date d'inscription
Statut
Membre
Dernière intervention
-
gotomtom Messages postés 55 Date d'inscription Statut Membre Dernière intervention -
gotomtom Messages postés 55 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je débute en programmation et je dois entaîner les procédures en Pascal.
J'ai le bloc Unit suivant :
Unit echange;
Interface
Procedure echange (a:INTEGER; b:INTEGER);
Implementation
Procedure echange (a:INTEGER; b:INTEGER);
VAR
c:INTEGER;
BEGIN
c:=a;
a:=b;
b:=c;
END;
END.
ça doit être ok, le compilateur a accepté.
J'ai le programme suivant :
Program S1E1;
uses echange;
VAR
d:INTEGER;
e:INTEGER;
BEGIN
WRITELN ('tape 2 chiffres');
READLN (d, e);
WRITELN ('d=',' ',d,' ','e=',' ',e);
echange (d, e);
WRITELN ('d=',' ',d,' ','e=',' ',e);
READLN;
END.
A la ligne 12 celle de (echange), il met -Fatal:syntax error, "." expected but "(" found-. Peux-tu m'aider ?
Je débute en programmation et je dois entaîner les procédures en Pascal.
J'ai le bloc Unit suivant :
Unit echange;
Interface
Procedure echange (a:INTEGER; b:INTEGER);
Implementation
Procedure echange (a:INTEGER; b:INTEGER);
VAR
c:INTEGER;
BEGIN
c:=a;
a:=b;
b:=c;
END;
END.
ça doit être ok, le compilateur a accepté.
J'ai le programme suivant :
Program S1E1;
uses echange;
VAR
d:INTEGER;
e:INTEGER;
BEGIN
WRITELN ('tape 2 chiffres');
READLN (d, e);
WRITELN ('d=',' ',d,' ','e=',' ',e);
echange (d, e);
WRITELN ('d=',' ',d,' ','e=',' ',e);
READLN;
END.
A la ligne 12 celle de (echange), il met -Fatal:syntax error, "." expected but "(" found-. Peux-tu m'aider ?
A voir également:
- Procedure en pascal
- Turbo pascal - Télécharger - Édition & Programmation
- My pascal - Télécharger - Édition & Programmation
- Dev pascal - Télécharger - Édition & Programmation
- Procédure de frigo vide ✓ - Forum Consommation & Internet
- Le point d'entree de procedure est introuvable kernel32 dll ✓ - Forum Windows
3 réponses
Je ne sais pas quel compilateur tu utilises, mais avec Dev-Pascal il me mets des erreurs sur l'unité (alors qu'il n'y a pas de problème avec le programme)
Ta procédure echange, ne devrait pas porter le même nom que ton unité echange.
De plus, à la fin de l'unité tu mets END. sans avoir mis de BEGIN , ce n'est pas une erreur en soit, mais ce serait quand même plus propre de mettre le BEGIN.
Maintenant que ça compile tu verras que ta procédure echange ne fait pas ce que tu veux... mais je te laisse t'entraîner à trouver l'erreur tout seul ;-)
La confiance n'exclut pas le contrôle
Ta procédure echange, ne devrait pas porter le même nom que ton unité echange.
De plus, à la fin de l'unité tu mets END. sans avoir mis de BEGIN , ce n'est pas une erreur en soit, mais ce serait quand même plus propre de mettre le BEGIN.
Unit EchangeUnit; ///////////////////////////////////////// Interface procedure echange (a:integer; b:integer); ///////////////////////////////////////// Implementation procedure echange (a:integer; b:integer); var c:integer; begin c:=a; a:=b; b:=c; end; ///////////////////////////////////////// BEGIN END.
Maintenant que ça compile tu verras que ta procédure echange ne fait pas ce que tu veux... mais je te laisse t'entraîner à trouver l'erreur tout seul ;-)
La confiance n'exclut pas le contrôle
Salut,
J'utilise Geany comme compilateur.
Pour l'erreur. il me semble que je dois mettre VAR pour paramètres d'entrée/sortie. a=2 b=4. en entrée et a=4 b=2 en sortie.
Je n'ai pas mon compilateur sous la main (je suis au travail :-)
Alors si je change le nom de mon unité, ça devrait compiler ?
J'utilise Geany comme compilateur.
Pour l'erreur. il me semble que je dois mettre VAR pour paramètres d'entrée/sortie. a=2 b=4. en entrée et a=4 b=2 en sortie.
Je n'ai pas mon compilateur sous la main (je suis au travail :-)
Alors si je change le nom de mon unité, ça devrait compiler ?
Effectivement en changeant le nom de l'unité, ça fonctionne. j'ai mis Uechange. D'ailleurs, notre prof nous a conseillé de toujours mettre un signe distinctif (U par ex.) pour les unités et de ne pas avoir le même nom que la procédure !
C'est pas nos erreurs que l'on apprend ! C'est mon 1er programme en procédure, ça se fête :-)
C'est pas nos erreurs que l'on apprend ! C'est mon 1er programme en procédure, ça se fête :-)