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

JavaScript Discussion :

Condition de sortie de boucle.


Sujet :

JavaScript

  1. #21
    Invité
    Invité(e)
    Par défaut
    J'ai édité mon message précédent, avec du nouveau code.

  2. #22
    Membre émérite
    Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    Septembre 2002
    Messages
    1 412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 412
    Points : 2 522
    Points
    2 522
    Par défaut
    Citation Envoyé par NoSmoking Voir le message
    @badaze :
    peut être voulais tu écrire « je me suis trompé »

    Concernant ton code il me semble que détourner les éléments et les événements associés, ici le <form>, n'est pas la meilleur des choses même si bien sûr c'est faisable, la logique de fonctionnement ne sautant pas forcément au yeux.

    Autre chose, teste en mettant la bonne réponse lors du dernier essai.
    Non je voulais bien écrire "je m'a trompé" pour montrer que corriger une erreur (tromper = la condition de sortie) ne rend pas pour autant le tout correct (m'a = boucle inutile).
    Sinon le code avec le formulaire n'est pas de moi. Je n'y aurais jamais pensé mais maintenant que je l'ai vu je me dis qu'il doit bien y avoir des cas où ça peut être intéressant.
    Cela ne sert à rien d'optimiser quelque chose qui ne fonctionne pas.

    Mon site : www.emmella.fr

    Je recherche le manuel de l'Olivetti Logos 80B.

  3. #23
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 042
    Points : 44 469
    Points
    44 469
    Par défaut
    Citation Envoyé par badaze Voir le message
    Non je voulais bien écrire "je m'a trompé" pour montrer que corriger une erreur (tromper = la condition de sortie) ne rend pas pour autant le tout correct (m'a = boucle inutile).
    Je n'ai pas bien compris ce que tu essais de faire passer comme message mais je te rassure les choses que je ne comprends pas sont infiniment plus nombreuses que celles que je comprends !


    Sinon le code avec le formulaire n'est pas de moi. Je n'y aurais jamais pensé mais maintenant que je l'ai vu je me dis qu'il doit bien y avoir des cas où ça peut être intéressant.
    L'appréciation était en fait plus générale mais effectivement mal rédigée !

    L'élément <form> n'est pas fait pour cela et il existe un élément <button> qui a été inventé pour gérer justement les interactions avec du JavaScript, donc autant avoir le réflexe de l'utiliser.

    Concernant le sujet initial
    Il serait bon de savoir si l'on parle de boucle « langage » (for..., do...while, while{}) ou de boucle « fonctionnelle », le résultat et l'approche peut être bien différente.

    Dans le cas de boucle « langage » l'utilisation des méthodes alert et prompt, même si elles ne sont pas très glamour elles présentent l'avantage de bloquer l’exécution du script et dans ce cas de bien se rendre compte de ce qui se passe.

    Comme dit précédemment :
    L'utilisation de pseudo-code est également une bonne alternative à l'écriture finale.
    la résolution d'une telle boucle do...while se résume à :
    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
    // initialisation
    maxEssais = saisirValeur("nombre essais")
    valeurCherchee = getValeurAleatoire()
    nbrEssai = 0
    reponseOK = FAUX
    // début de la boucle
    FAIRE //  (do)
     
      valeur = saisirValeur ("")
     
      SI valeur ESTVIDE AlORS
        message = "Pas de valeur vide"
      FIN SI
     
      SI valeur NOT NOMBRE ALORS
        message = "La valeur doit être un nombre"
      FIN SI
     
      SI valeur SUPERIEURE valeurCherchee ALORS
        message = "La valeur est supérieure"
      FIN SI
     
      SI valeur INFERIEURE valeurCherchee ALORS
        message = "La valeur est inférieure"
      FIN SI
     
      SI valeur EGALE valeurCherchee ALORS
        reponseOK = VRAI
        message = "Bravo la valeur cherchée était " + valeurCherchee
      FIN SI
     
      afficherMessage( message)
     
      nbrEssai = nbrEssai +1
     
    TANT QUE NOT reponseOK OU (nbrEssai < maxEssais) //  (while)
    à partir de là on peut envisager toutes les optimisations possibles.

    Dans le cas de boucle « fonctionnelle » il faut de plus penser aux effets de bord comme, que se passe t-il en fin d’exécution d'une séquence.

    Dans les exemples que l'on peut voir on note que rien n'empêche de continuer à jouer et que le message de félicitation apparaît lors d'un essai supplémentaire.

  4. #24
    Membre du Club
    Homme Profil pro
    etudiant developpeur web
    Inscrit en
    Février 2018
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : etudiant developpeur web

    Informations forums :
    Inscription : Février 2018
    Messages : 99
    Points : 63
    Points
    63
    Par défaut Encore un grand merci
    Oui merci a cette communauté où l'on trouve de l'aide et des explications.


+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Ma fonction ne veut pas retourner un élément
    Par razbitume dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 27/03/2009, 17h25
  2. Fonction SetTimer : écart de temps pas respecté ?
    Par sivaller dans le forum Débuter
    Réponses: 2
    Dernier message: 20/11/2008, 09h50
  3. Une fonction qui ne veut pas de mes variables
    Par zebulondu54 dans le forum Langage
    Réponses: 5
    Dernier message: 09/06/2008, 05h41
  4. Réponses: 1
    Dernier message: 17/10/2007, 10h04
  5. resultat de la fonction ajdate qui ne respecte pas les critères
    Par alassanediakite dans le forum Requêtes et SQL.
    Réponses: 16
    Dernier message: 02/09/2007, 00h07

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