Pobleme pour recommencer une boucle d'un jeu
Résolu/Fermé
Lsnd
Messages postés
13
Date d'inscription
samedi 4 novembre 2017
Statut
Membre
Dernière intervention
2 octobre 2018
-
Modifié le 30 sept. 2018 à 20:04
Lsnd Messages postés 13 Date d'inscription samedi 4 novembre 2017 Statut Membre Dernière intervention 2 octobre 2018 - 1 oct. 2018 à 11:45
Lsnd Messages postés 13 Date d'inscription samedi 4 novembre 2017 Statut Membre Dernière intervention 2 octobre 2018 - 1 oct. 2018 à 11:45
A voir également:
- Recommencer une boucle python
- Citizen code python avis - Accueil - Outils
- Boucle cmd - Forum Programmation
- Recommencer pokemon x ✓ - Forum DS
- Python est introuvable. exúcutez sans argument pour procúder ó l ✓ - Forum Python
4 réponses
jordane45
Messages postés
38371
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 janvier 2025
4 722
30 sept. 2018 à 20:00
30 sept. 2018 à 20:00
if(reponse == "NON" || reponse == "Non" || reponse == "non")
jordane45
Messages postés
38371
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 janvier 2025
4 722
Modifié le 30 sept. 2018 à 20:36
Modifié le 30 sept. 2018 à 20:36
wvile (rejouer == true)
Lsnd
Messages postés
13
Date d'inscription
samedi 4 novembre 2017
Statut
Membre
Dernière intervention
2 octobre 2018
30 sept. 2018 à 20:49
30 sept. 2018 à 20:49
Merci, ceci corrige une partie du problème. Maintenant ma boucle s'arrête lorsque je rentre "OUI", mais ne fait pas redémarrer le programme. Par contre quand je rentre la réponse "NON" le problème n'as pas bouger, il continue de m'indiquer "Bravo!!" puis "Voulez vous rejouer ?" sans arrêt.
jordane45
Messages postés
38371
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 janvier 2025
4 722
30 sept. 2018 à 21:51
30 sept. 2018 à 21:51
Déjà...tu as inversé les valeurs de
rejouer = true; danston if
Ensuite...ben..tu ne rappelles pas la fonctiin qui lance le jeu...donc normal...
rejouer = true; danston if
Ensuite...ben..tu ne rappelles pas la fonctiin qui lance le jeu...donc normal...
Lsnd
Messages postés
13
Date d'inscription
samedi 4 novembre 2017
Statut
Membre
Dernière intervention
2 octobre 2018
30 sept. 2018 à 22:00
30 sept. 2018 à 22:00
Ah oui en effet je n'avais pas vu cette erreur merci. Comment faire pour rappeler la fonction ?
jordane45
Messages postés
38371
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 janvier 2025
4 722
30 sept. 2018 à 22:28
30 sept. 2018 à 22:28
Faut mettre ton code dans une fonction...puis l'appeler...tout simplement
Lsnd
Messages postés
13
Date d'inscription
samedi 4 novembre 2017
Statut
Membre
Dernière intervention
2 octobre 2018
30 sept. 2018 à 22:36
30 sept. 2018 à 22:36
Désolé, mais je ne sais pas faire ça, serais ce possible de me montrer ?
jordane45
Messages postés
38371
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 janvier 2025
4 722
1 oct. 2018 à 07:37
1 oct. 2018 à 07:37
Var qqchose = new Function(){ // ici ton code } //appel de la fonction qqchose();
Lsnd
Messages postés
13
Date d'inscription
samedi 4 novembre 2017
Statut
Membre
Dernière intervention
2 octobre 2018
Modifié le 1 oct. 2018 à 08:30
Modifié le 1 oct. 2018 à 08:30
Ça ne fonctionne toujours pas, le programme n'est même pas exécutable.
Même en déplacent l'appel de ma fonction ça ne fonctionne pas.
<script> var nombreMystere = Math.floor(100*Math.random()+1); var nombre = prompt("Entrez un nombre entre 0 et 100"); var tentatives = 0; var reponse; var rejouer = true; var boucle = new Function(){ // création de la fonction do{ do{ document.write("le nombre mystrere est " + nombreMystere); document.write("<br />") document.write(nombre); document.write("<br />"); if(nombreMystere < nombre){ document.write("Votre nombre est plus grand que le nombre mystère "); nombre = prompt("-"); tentatives = tentatives + 1; document.write("<br />"); }else if(nombreMystere > nombre){ document.write("Votre nombre est plus petit que le nombre mystère "); nombre = prompt("+"); tentatives = tentatives + 1; document.write("<br />"); }else{ tentatives = tentatives + 1; document.write(" Bravo !! Le nombre mystère était bien " + nombreMystere + ". Il vous a fallu "+ tentatives + " tentatives."); } document.write("<br />"); }while (nombre != nombreMystere); alert(" Bravo !!"); reponse = prompt("Voulez vous recommencer ?"); if(reponse == "NON" || reponse == "Non" || reponse == "non"){ alert("A Bientôt !"); rejouer = false; }else if(reponse == "OUI" || reponse == "Oui" || reponse == "oui"){ alert("C'est reparti !"); rejouer = true; boucle(); // Je rappel la fonction } } } }while(rejouer == true) </script>
Même en déplacent l'appel de ma fonction ça ne fonctionne pas.
jordane45
Messages postés
38371
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 janvier 2025
4 722
1 oct. 2018 à 09:07
1 oct. 2018 à 09:07
regarde donc tes ouvertures/fermetures d'acolades....
Ton "While" est en dehors de ta fonction ...
Tu regardes dans la console de ton navigateur au moins pour voir les érreurs JS ?????
Bon...
Voila une solution juste en organisant correctement tes boucles
Et une solution en utilisant la fonction :
Ton "While" est en dehors de ta fonction ...
Tu regardes dans la console de ton navigateur au moins pour voir les érreurs JS ?????
Bon...
Voila une solution juste en organisant correctement tes boucles
do{ var nombreMystere = Math.floor(100*Math.random()+1); var nombre = prompt("Entrez un nombre entre 0 et 100"); var tentatives = 0; var reponse; var rejouer = true; do{ document.write("<br />") document.write(nombre); document.write("<br />"); if(nombreMystere < nombre){ document.write("Votre nombre est plus grand que le nombre mystère "); nombre = prompt("-"); tentatives = tentatives + 1; document.write("<br />"); }else if(nombreMystere > nombre){ document.write("Votre nombre est plus petit que le nombre mystère "); nombre = prompt("+"); tentatives = tentatives + 1; document.write("<br />"); }else{ tentatives = tentatives + 1; document.write(" Bravo !! Le nombre mystère était bien " + nombreMystere + ". Il vous a fallu "+ tentatives + " tentatives."); alert(" Bravo !!"); reponse = prompt("Voulez vous rejouer commencer ?"); if(reponse == "NON" || reponse == "Non" || reponse == "non"){ alert("A Bientôt !"); rejouer = false; }else if(reponse == "OUI" || reponse == "Oui" || reponse == "oui"){ alert("C'est reparti !"); rejouer = true; } } document.write("<br />"); }while (nombre != nombreMystere); }while(rejouer == true);
Et une solution en utilisant la fonction :
function jouer(){ var nombreMystere = Math.floor(100*Math.random()+1); var nombre = prompt("Entrez un nombre entre 0 et 100"); var tentatives = 0; var reponse; var rejouer = true; do{ document.write("<br />") document.write(nombre); document.write("<br />"); if(nombreMystere < nombre){ document.write("Votre nombre est plus grand que le nombre mystère "); nombre = prompt("-"); tentatives = tentatives + 1; document.write("<br />"); }else if(nombreMystere > nombre){ document.write("Votre nombre est plus petit que le nombre mystère "); nombre = prompt("+"); tentatives = tentatives + 1; document.write("<br />"); }else{ tentatives = tentatives + 1; document.write(" Bravo !! Le nombre mystère était bien " + nombreMystere + ". Il vous a fallu "+ tentatives + " tentatives."); } document.write("<br />"); }while (nombre != nombreMystere); alert(" Bravo !!"); reponse = prompt("Voulez vous rejouer commencer ?"); if(reponse == "NON" || reponse == "Non" || reponse == "non"){ alert("A Bientôt !"); }else if(reponse == "OUI" || reponse == "Oui" || reponse == "oui"){ alert("C'est reparti !"); jouer(); } } jouer();
Lsnd
Messages postés
13
Date d'inscription
samedi 4 novembre 2017
Statut
Membre
Dernière intervention
2 octobre 2018
1 oct. 2018 à 11:45
1 oct. 2018 à 11:45
Merci beaucoup il fonctionne enfin, désolé de vous avoir autant embêté.
Bonne journée !
Bonne journée !
30 sept. 2018 à 20:30
merci