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

Pascal Discussion :

Confirmation de sortie d'une boucle


Sujet :

Pascal

  1. #1
    Futur Membre du Club
    Homme Profil pro
    informatitien
    Inscrit en
    Janvier 2016
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : informatitien

    Informations forums :
    Inscription : Janvier 2016
    Messages : 14
    Points : 5
    Points
    5
    Par défaut Confirmation de sortie d'une boucle
    Salut à tout le monde,

    Je désire savoir comment on peut faire une confirmation de sortie d'une boucle telle que "Si vous désirez sortir appuyez sur Y" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            write('if you want exit tape :Y =>');
    	readln (i);
            until i='y';
    Mais je désire ajouter un message de confirmation de sortie comme "si vous êtes sûr tapez encore y".

  2. #2
    Futur Membre du Club
    Homme Profil pro
    informatitien
    Inscrit en
    Janvier 2016
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : informatitien

    Informations forums :
    Inscription : Janvier 2016
    Messages : 14
    Points : 5
    Points
    5
    Par défaut
    Je viens de trouver la solution, c'est tres simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            write('if you want exit tape :Y =>');
            write('are you sure :Y =>');
            readln (i);
            until i='y';
    Le premier write('if you want exit tape :Y =>'); n'a aucune relation avec la commande mais elle est là pour nous faire croire à une 1ere question, mais la 2eme write('are you sure :Y =>'); c'est elle qui met fin à la boucle.
    C'est ça la confirmation que je viens de déduire et ça marche.

    merci

  3. #3
    Expert confirmé

    Homme Profil pro
    Directeur de projet
    Inscrit en
    Mai 2013
    Messages
    1 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2013
    Messages : 1 335
    Points : 4 158
    Points
    4 158
    Par défaut
    Bonjour,

    Sauf que ça ne marche pas.

    Hormis le fait que le code va afficher les 2 messages avant même que l'utilisateur ait tapé quelque chose, on ne peut sortir que si il répond Y. S'il répond autre chose, on lui repose la même question jusqu'à ce qu'il finisse par taper "Y". Il n'a donc pas le choix. Normalement, s'il répond autre chose, il devrait revenir dans le corps principal du programme pour continuer son travail.

    Par ailleurs on n'écrit pas un until sans mettre le repeat qui va avec.

    Enfin, comme mentionné précédemment, on ne demande pas 'Y' pour n'accepter que 'y' ou on rend le code insensible à la casse (minuscules/majuscules).

    Code Pascal : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function ExitControl : Boolean;
    var c : Char;
    begin
       write('if you want exit : "Y" ');
       readln (c);
       if (c = 'Y') or (c= 'y') then begin 
          write('Are you sure : "Y" ');
          readln (c);
          if (c = 'Y') or (c= 'y') then Exit(true); // True : oui je veux sortir
       end;
       Result := False; // Non je ne veux pas sortir
    end;

    Salutations
    Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better. (Samuel Beckett)

  4. #4
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 732
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 732
    Points : 15 137
    Points
    15 137
    Par défaut
    Bonsoir,

    Citation Envoyé par Guesset Voir le message
    Sauf que ça ne marche pas.
    auquel cas il faudrait enlever le , qui ne peut qu'induire les lecteurs en erreur.

    Y a-t-il un modo dans l'avion le forum ?
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

Discussions similaires

  1. Problème de sortie d'une boucle
    Par sebdu94 dans le forum C
    Réponses: 12
    Dernier message: 19/01/2008, 09h43
  2. Sortie d'une boucle
    Par NELLLY dans le forum MATLAB
    Réponses: 11
    Dernier message: 14/01/2008, 19h36
  3. Réponses: 1
    Dernier message: 18/10/2007, 17h13
  4. vérification à la sortie d'une boucle
    Par freestyler dans le forum Delphi
    Réponses: 4
    Dernier message: 10/10/2006, 15h44
  5. [langage] condition de sortie d'une boucle
    Par perlaud dans le forum Langage
    Réponses: 3
    Dernier message: 23/09/2004, 10h25

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