IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Free Pascal Discussion :

[Free Pascal] Problème lors de la compilation


Sujet :

Free Pascal

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 47
    Points : 17
    Points
    17
    Par défaut [Free Pascal] Problème lors de la compilation
    Bonjour

    Voila je m'entraine sur pascal et donc me suis fait un programme avec une procèdure sur des choix de repas mais lors de ca compilation j'ai quelques erreur sur l'initialisation des variables de ces procèdures alors que je l'es ai bien initialisé enfin je crois.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    program carte;
     
    (* Procedure pour l'entree *)
    procedure entree;
     
    	var choix1:char;
     
    	begin
    		writeln ('Veuillez saisir votre entrée "C ou O ou S" ');
    		readln ('choix1');
    		case choix1 of
    			'C':writeln('Crudités');
    			'O':writeln('Oeuf');
    			'S':writeln('Soupe');
    	end;
    end;
     
    (* Procedure pour la plat *)
    procedure plat;
     
    	var choix2:char 1;
     
    	begin
    		writeln ('Veuillez saisir votre plat "V ou P ou R" ');
    		readln ('choix2');
    		case choix2 of
    		'V':writeln ('Viande');
    		'P':writeln ('Poisson');
    		'R':writeln ('Que des légumes');
    		end;
    end;
     
    (* Procedure pour le dessert *)
    procedure dessert;
     
    	var choix3:char 1;
     
    	begin
    		writeln ('Veuillez saisir votre dessert "G" ou F ou S" ');
    		readln ('choix3');
    		case choix3 of
    		'G':writeln ('Gateau');
    		'F':writeln ('Fruit');
    		'S':writeln ('Sorbet');
    		end;
    end;
     
    (*Programme principal*)
    begin
    	entree;
    	plat;
    	dessert;
    end.
    mon erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Compiling exo38.pas
    exo38.pas(10,19) Error: Variable identifier expected
    exo38.pas(11,15) Warning: Local variable "choix1" does not seem to be initialized
    exo38.pas(25,19) Error: Variable identifier expected
    exo38.pas(26,15) Warning: Local variable "choix2" does not seem to be initialized
    exo38.pas(40,19) Error: Variable identifier expected
    exo38.pas(41,15) Warning: Local variable "choix3" does not seem to be initialized
    exo38.pas(54) Fatal: There were 3 errors compiling module, stopping
    exo38.pas(54) Fatal: Compilation aborted
    Error: /usr/bin/ppc386 returned an error exitcode (normal if you did not specify a source file to be compiled)
    Merci d' avance

  2. #2
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 464
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 464
    Points : 4 311
    Points
    4 311
    Par défaut
    Le problème vient des trois lignes readln. Tu passes les variables en paramètres mais entourées par des simple quotes, ce que le compilateur comprends comme étant des chaines de caractères. Supprime les simple qutotes dans un premier temps, ca devrait compiler.

    Ensuite, pour lire un caractère, il est préférable d'utiliser readkey au lieu de readln, car readln attend l'appui de la touche Entrée (ce qui est superflu dans ce genre de menu). Remplace donc tes readln(choixx) par des choixx := readkey;

    M.Dlb - Modérateur z/OS - Rédacteur et Modérateur Pascal

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 47
    Points : 17
    Points
    17
    Par défaut
    Merci beaucoup cela fonctionne


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Free Pascal] Aide pour comprendre une erreur de compilation
    Par SimoBenz dans le forum Free Pascal
    Réponses: 7
    Dernier message: 05/12/2006, 18h43
  2. [Free Pascal] Erreur lors de l'éxecution. (exitcode = 106)
    Par phoebos dans le forum Free Pascal
    Réponses: 2
    Dernier message: 03/03/2006, 22h24
  3. [Free Pascal] Graphique avec Dev-Pascal
    Par CompuTux dans le forum Free Pascal
    Réponses: 15
    Dernier message: 03/09/2004, 02h15
  4. [Free Pascal] Taille de l'exécutable
    Par macluvitch dans le forum Free Pascal
    Réponses: 12
    Dernier message: 28/11/2003, 21h26
  5. [Free Pascal] Comportement de Exec
    Par néo333 dans le forum Free Pascal
    Réponses: 3
    Dernier message: 01/11/2003, 17h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo