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 :

[LG]Equivalent de break


Sujet :

Langage Pascal

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 560
    Points : 148
    Points
    148
    Par défaut [LG]Equivalent de break
    Salut,

    Je cherche à avoir l'équivalent d'une certaine instruction C en Pascal, il s'agit de l'instruction "break".

    Code C:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    while (b == true)
    {
    ...if(c == false) break;
    }
     
    Dans ce code, on sort de la boucle si c vaut false.
    Peut-on faire la même chose en Pascal ?
     
    Merci d'avance.

  2. #2
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 43
    Points : 70
    Points
    70
    Par défaut
    et la réponse est .... break, étonnant non ?

    T'aurais pu regarder dans l'aide pour voir s'il n'y avait pas l'instruction break

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 560
    Points : 148
    Points
    148
    Par défaut
    Lorsque je mets l'instruction break, j'ai l'erreur "unknown identifier", cf code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    ...
         status:=0;
         while (err = 0) do begin
                oldcolis:=LECTLIGTXT(FICGLOBAL, nbreg, err);
                if oldcolis = colistr then
                begin
        	     status:=1;
        	     break;
                end;
                nbreg:=nbreg+1;
        end;
    ...
    De plus j'essaie de mettre une instruction du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while(err = 0 OR err = 4)
    Mais j'obtiens la même erreur.
    Note : je travaille avec Turbo Pascal.

  4. #4
    Rédacteur
    Avatar de Giovanny Temgoua
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    3 830
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 3 830
    Points : 4 006
    Points
    4 006
    Par défaut
    A quelle ligne survient l'erreur exactement ? Sur la ligne de break ?

    De plus, écrit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while((err = 0) OR (err = 4))
    à la place de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while(err = 0 OR err = 4)
    A+

    PS : vérifie bien que toutes tes variables sont définis dans la section var

  5. #5
    Rédacteur

    Avatar de khayyam90
    Homme Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2004
    Messages
    10 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2004
    Messages : 10 369
    Points : 40 164
    Points
    40 164
    Par défaut
    l'utilisation d'un break pour ce genre de sortie signale que l'algo peut être amélioré.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    status:=0;
    oldcolis := toto ; { quelque chose de différent de colistr }
    while ((err = 0) AND (oldcolis<>colistr)) do 
    begin
                oldcolis:=LECTLIGTXT(FICGLOBAL, nbreg, err);
                nbreg:=nbreg+1;
    end;
    if (oldcolis=colistr) status:=1;

  6. #6
    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
    En effet, tout ce qui est break, exit ou continue est à éviter, car ceci montre une faiblesse de l'algorithme. Pour information, en programmation, un break est assimilé à un label, quelque chose donc à éviter dans une programmation propre !

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

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 560
    Points : 148
    Points
    148
    Par défaut
    Merci pour ces indications, cela fonctionne correctement.

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

Discussions similaires

  1. Equivalent de break mais pour un programme
    Par membreComplexe12 dans le forum C++
    Réponses: 17
    Dernier message: 22/02/2011, 21h11
  2. Equivalent BREAK mais pour la fin d'un bloc de résultats
    Par mimidatabase dans le forum Sql*Plus
    Réponses: 5
    Dernier message: 07/07/2010, 10h54
  3. equivalent de break en vba access
    Par celiaaa dans le forum Access
    Réponses: 6
    Dernier message: 20/12/2006, 14h34
  4. [Kylix] Equivalent ShellExec en CLX
    Par Anonymous dans le forum EDI
    Réponses: 7
    Dernier message: 14/08/2002, 11h55
  5. [Kylix] equivalent winsock avec kylix
    Par Victor dans le forum EDI
    Réponses: 2
    Dernier message: 08/05/2002, 07h43

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