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] Aide pour comprendre une erreur de compilation


Sujet :

Free Pascal

  1. #1
    Futur Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 7
    Points : 5
    Points
    5
    Par défaut [Free Pascal] Aide pour comprendre une erreur de compilation
    Bonsoir,
    Quand j'essaye de compiler ce programme, Dev-Pascal m'affiche trois erreurs.
    Voilà le programme :
    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
    program Mousse;
    const prix_metre = 300;
    var  x : char;
         larg, long, prof, ray, haut, vol, prix, prix_metre : real;
    begin
      writeln('Quelle est la forme voulue ?');
      write('saisir r pour rectangulaire, c pour cylindrique: ');
      readln(x);
        if (x <> 'r') or (x<>'c') then writeln('Saisie erronnée');
        if (x = 'r') then begin
                          write('largeur en mètres');
                          readln(larg);
                          write('longueur en mètres');
                          readln(long);
                          write('profondeur en mètres');
                          readln(prof);
                          vol:= larg*long*prof;
                          prix:= prix_metre*vol;
                          writeln('Prix T.T.C: ',prix :10:2,'euros.');
                        end;
        if (x = 'c') then begin
                         write('rayon en mètres: ');
                         readln(ray);
                         write('hauteur en mètres: ');
                         readln(haut);
                         vol:= sqr(ray*2)*haut;
                         prix:= prix_metre*vol;
                         writeln('Prix T.T.C: ',prix :10:2,'euros.');
                       end;
    readln;
    end.
    J'ai beau chercher l'erreur, je ne trouve pas

  2. #2
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 638
    Points
    7 638
    Par défaut
    Salut,

    Citation Envoyé par SimoBenz
    dev-pascal m'affiche trois erreures.

    j'ai beau a chercher l'erreure, je ne trouve pas
    Ben, suffit de lire les message d'erreur du compilateur, non???
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  3. #3
    Futur Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    oui, mais ce n'est pas claire
    quand je me dirrige vers la ligne signalée, je ne trouve rien

  4. #4
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 638
    Points
    7 638
    Par défaut
    Citation Envoyé par SimoBenz
    oui, mais ce n'est pas claire
    quand je me dirrige vers la ligne signalée, je ne trouve rien
    Moui, ben si tu ne nous dit rien sur les erreurs ni où elles sont signalées, on ne va pas pouvoir t'aider...
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  5. #5
    Futur Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    voila les erreurs affichés
    Nom : Sans titre.gif
Affichages : 191
Taille : 4,5 Ko, cliquez sur le fichier attaché

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Points : 711
    Points
    711
    Par défaut
    Bonjour,

    Ton compilateur te signale que tu redéfinis un nom.

    DONC tu charches, et trouve où il a déjà été défini.

    Étant donnée la longueur de ton programme, ce n'est tout de même pas un effort titanesque.

    Désolé, je ne vais pas chercher à ta place, en plus dans du code non indenté...
    Compilation sans erreur ne signifie pas programme sans erreur.
    L'indentation n'a pas été imaginée pour faire beau, mais pour faciliter la lecture des programmes.

  7. #7
    Membre éclairé

    Inscrit en
    Avril 2003
    Messages
    284
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 284
    Points : 773
    Points
    773
    Par défaut
    Il va falloir maîtriser un peu l'anglais, c'est très très utile pour developper...
    Le message de ton compilateur est très clair :

    5/1 hint : Identifier already defined in exev-p~1.pas at line 2
    5/1 ERROR Duplicate identifier PRIX_METRE
    5/1 hint : Identifier already defined in exev-p~1.pas at line 2
    à la ligne 5 il signale une erreur, son message en fr se traduit par :
    Conseil : Nom déjà défini dans ton programme ligne 2
    Erreur : Nom déjà utilisé PRIX_METRE
    Bref tu as la ligne , le type d'erreur, et le detail exact de l'erreur... difficile de faire plus précis....

  8. #8
    Nouveau Candidat au Club
    Inscrit en
    Décembre 2006
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1
    Points : 1
    Points
    1
    Par défaut mémécobol
    Bonjour,

    Il me semble que Clandestino t'a tout dit ! La variable PRIX_METRE est déclarée 2 fois : une fois en tant que constante (= 300) et une autre fois en tant que "real"

    A part ça même compilé , ton programme ne va pas bien tourner et boucler sur "saisie erronnée" vu que dans le test sur "x" tu as mis "or" au lieu de "and" , erreur grossière de logique ;

    A part ça je n'y connais rien en pascal étant de la vieille école du cobol et de sa génération !

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

Discussions similaires

  1. aide pour comprendre une formule mathématique
    Par roubas dans le forum Mathématiques
    Réponses: 3
    Dernier message: 22/03/2009, 12h30
  2. demande d'aide pour comprendre une requete SQL
    Par Halloula dans le forum Langage SQL
    Réponses: 5
    Dernier message: 09/04/2008, 18h14
  3. Aide pour identifier une erreur de syntaxe
    Par tribalou dans le forum Cobol
    Réponses: 10
    Dernier message: 21/02/2008, 00h46
  4. Aide pour comprendre une METHODE
    Par youssoufoued dans le forum Langage
    Réponses: 4
    Dernier message: 04/01/2008, 21h54
  5. Réponses: 4
    Dernier message: 18/11/2006, 22h58

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