Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problême boucle infinie :(

boucle for

Sujet résolu
    10 août 2018 à 20:11:51

    Bonjour à tous j'ai un petit soucis dans un programme une boucle for se repète à l'infini provocant le plantage du navigateur alors que la condition pour que cette dernière se fasse n'est plus remplie lorsqu'on rentre le bon nombre...

    Voici le code:


    console.log("Bienvenue dans ce jeu de devinette !");


    var solution = Math.floor(Math.random() * 100) + 1;

    var essaiNb = Number(prompt("Essayez de deviner mon chiffre entre 1 et 100"));


    for (; essaiNb !== solution;) {
       
        if (essaiNb < solution) {
        console.log(essaiNb + " est trop petit !");
            essaiNb = prompt("Essayez de deviner mon chiffre entre 1 et 100 !");

    } else if(essaiNb > solution) {
        console.log(essaiNb + " est trop grand !");
       essaiNb = prompt("Essayez de deviner mon chiffre entre 1 et 100 !");
            }
         }

    console.log("Bravo ! La solution était : " + solution);

    Le problême étant que la boucle se repète alors que essaiNB === solution lorsqu'on trouve le bon chiffre...

    Logiquement le programme devrait passer à la ligne en affichant Bravo et se stopper non ?

    Merci d'avance



     

    • Partager sur Facebook
    • Partager sur Twitter
      10 août 2018 à 22:21:12

      Bonjour,

      Le message qui suit est une réponse automatique activée par un membre de l'équipe. Les réponses automatiques leur permettent d'éviter d'avoir à répéter de nombreuses fois la même chose, ce qui leur fait gagner du temps et leur permet de s'occuper des sujets qui méritent plus d'attention.
      Nous sommes néanmoins ouverts et si vous avez une question ou une remarque, n'hésitez pas à contacter la personne en question par Message Privé.

      Pour plus d'informations, nous vous invitons à lire les règles générales du forum

      Merci d'utiliser la mise en forme de code Image

      Les forums d'Openclassrooms disposent d'une fonctionnalité permettant de colorer et mettre en forme les codes source afin de les rendre plus lisibles et faciles à manipuler par les intervenants. Pour cela, il faut utiliser le bouton Image de l'éditeur, choisir un des langages proposés et coller votre code dans la zone prévue. Si vous utilisez l'éditeur de messages en mode Markdown, il faut utiliser les balises <pre class="brush: jscript;">Votre code ici</pre>.

      • Partager sur Facebook
      • Partager sur Twitter
        11 août 2018 à 9:44:13

        C'est parce que tu as oublié de caster essaiNb et donc "string" et "nombre" seront toujours différent avec !== et pas avec !=

        essaiNb = Number(prompt("Essayez de deviner mon chiffre entre 1 et 100 !"));



        • Partager sur Facebook
        • Partager sur Twitter
          12 août 2018 à 12:10:55

          Super merci , problême résolu :)
          • Partager sur Facebook
          • Partager sur Twitter
            12 août 2018 à 14:47:58

            Bonjour,

            Sujet résolu

            Tu peux passer le sujet à "résolu" (bouton en haut à droite du sujet) et cliquer sur les pouces levés des messages qui t'ont aidé⋅e ;)
            • Partager sur Facebook
            • Partager sur Twitter

            Problême boucle infinie :(

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown