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

Langage Pascal Discussion :

Les labels en Pascal [FAQ]


Sujet :

Langage Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Février 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 2
    Par défaut Les labels en Pascal
    salut
    j'ai ecris un programme pascal en utilisant les branchement goto label au sein d'un bloc d'instructions if... then... else,mais le programme ne compile pas.il signale que les les labels ne doivent pas etre utilisés au sein d'un bloc d'instruction.je ne sais plus quoi faire,s'il vous plaît aider moi.
    merci d'avance
    jpabess

  2. #2
    Membre Expert
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Par défaut
    bon, comme de toute façon quelqu'un te fera cette réponse tôt ou tard...

    Eviter au maximum l'usage de goto !

    C'est source de bug, comme les break. On peut généralement s'en sortir très bien sans ça...

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

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Par défaut
    Bonjour,
    Citation Envoyé par Loceka
    bon, comme de toute façon quelqu'un te fera cette réponse tôt ou tard...

    Eviter au maximum l'usage de goto !
    J'allais le dire

    Citation Envoyé par Loceka
    C'est source de bug, comme les break. On peut généralement s'en sortir très bien sans ça...
    Et je corrige:

    C'est source de bug, comme les break. On peut toujours s'en sortir très bien sans ça...

  4. #4
    Membre chevronné Avatar de Haywire
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2006
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2006
    Messages : 462
    Par défaut
    Bonjour, j'ai quand meme souvent lu dans des bouquins (peu importe le langage) que break et continue sont plus performant qu'une structure de contrôle équivalente.

    Moi je les utilise pour sortir d'une procedure quand j'en connais deja le resultat, pour éviter des tours de boucle inutiles. Ca permet d'épargner un test dans la condition de continuation, et donc aussi d'utiliser un for là où on aurait besoin d'un while pour une double condition.
    Et si y a des for imbriqués je fais même un exit.

    Mais je suis daccord que quand on veut utiliser ça il faut bien savoir ce que l'on fait. Je ne conseillerais pas à un débutant de les utiliser. Dailleurs moi je les utilise depuis peu. Utiliser des structures de contrôle équivalente avec plusieurs conditions aide à comprendre exactement ce qu'on fait.

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

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Par défaut
    Bonjour,
    Citation Envoyé par Mushroom7
    Bonjour, j'ai quand meme souvent lu dans des bouquins (peu importe le langage) que break et continue sont plus performant qu'une structure de contrôle équivalente.
    Ça reste à démontré avec des tests, et de toute manière, ne saurait être généralisé, même pour un langage donné, car strictement dépendant de l'implémentation de ce langage pour un compilateur donné.

    Et côté performances, surtout avec les processeurs modernes, SAUF calcul temps absolument critique, il ne devrait pas y avoir de problème, ALORS QUE un code pas clair finira par en poser, des problèmes : maintenance, évolution, par le même ou un autre programmeur (par le même programmeur aussi, car qui peut reprendre sans hésiter un programme fait il y a 2 ou 3 ans, ou plus ?).

    Citation Envoyé par Mushroom7
    Mais je suis daccord que quand on veut utiliser ça il faut bien savoir ce que l'on fait. Je ne conseillerais pas à un débutant de les utiliser. Dailleurs moi je les utilise depuis peu. Utiliser des structures de contrôle équivalente avec plusieurs conditions aide à comprendre exactement ce qu'on fait.
    Pour continuer sur mes remarques, SAUF absolue certitude que ton programme ne sera jamais repris par quelqu'un d'autre, il faut toujours privilégier la clarté du code, et même pour toi seulement, d'ailleurs.

  6. #6
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    8 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 8 049
    Billets dans le blog
    2
    Par défaut
    Bonjour !

    Pour quand même répondre à la question de départ, un label référencé par goto doit se trouver dans la même procédure ou fonction.
    Mais même sauter de l'extérieur vers l'intérieur d'une boucle ou vice-versa peut être dangereux : il faut vraiment savoir ce que l'on fait.

    Tu peux poster ton code, si tu le souhaites.

    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

Discussions similaires

  1. [VB6] TypeOf ne marche pas avec les Label ?
    Par belfaigore dans le forum VB 6 et antérieur
    Réponses: 14
    Dernier message: 21/04/2006, 13h36
  2. alignez tout les labels
    Par cellestion dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 07/03/2006, 08h42
  3. [TP] Problème avec les uses en pascal
    Par ryma501 dans le forum Turbo Pascal
    Réponses: 3
    Dernier message: 15/02/2006, 22h09
  4. [Visual Editor] problème avec les Label
    Par Willy7901 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 22/08/2005, 12h30
  5. [LG]les pointeurs en pascal
    Par sovo dans le forum Langage
    Réponses: 5
    Dernier message: 06/12/2004, 18h57

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