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 :

Boucle do while


Sujet :

JavaScript

  1. #1
    Membre actif
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2009
    Messages
    458
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Septembre 2009
    Messages : 458
    Points : 237
    Points
    237
    Par défaut Boucle do while
    Bonjour,

    Je souhaiterais mettre en oeuvre un switch et une boucle do while pour un mini menu à 3 options via un prompt.
    Le menu est basé comme ceci :
    1) 1- Frites
    2) 2- Pizzas
    3) 3- Exit

    Donc le but est simple, l'utilisateur saisie une option; on va dire la une par exemple et un message texte s'affichera en html lui disant qu'il est sur l'option 1.

    Ensuite, c'est pas terminé la boîte de dialogue (le prompt) lui re-propose les options du menu (les 3 options), on va sélectionner l'option 2, qui est pizzas et là un message s'affiche en html => "option 2"

    Le prompt réapparait et me propose encore différentes options je choisis la 3 ème, le programme se coupe.

    Voici mon code sauf que j'ai un soucis avec ma boucle do while, elle ne s'arrête jamais...

    Code HTML : 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
    37
    38
    39
    40
    41
    42
    43
    44
    <!DOCTYPE html>
    <html>
    <head>
     
    <script type="text/javascript">
     
    var choice = 0;
     
    function main()
    {
            do{
                    document.write("*****MENU******" + "<br>");
                    document.write("1)- Frites .");
                    document.write("2)- Pizza .");
                    choice = parseInt(prompt("Entrer votre choix svp : "));
     
                    switch(choice){
                            case 1:
                                    document.write("Option 1 " + "<br>");
                            break;
     
                            case 2:
                                    document.write("Option 2 " + "<br>");
                            break;
     
                    }
     
            }while(choice != 3);
    }
     
    </script>
     
    <body onload="main()">
    	<center>
    			<h2>Exercice </h2>
    	</center>
     
    </body>
     
     
    </head>
     
     
    </html>

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Fais un peu de recherche sur ce forum sur l'utilisation de document.write ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre actif
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2009
    Messages
    458
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Septembre 2009
    Messages : 458
    Points : 237
    Points
    237
    Par défaut
    Hello,

    A l'école notre professeur nous a dit qu'il fallait utiliser document.write pour afficher du texte.

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Alors prioritairement il te faut changer d'école ou de professeur !


    https://blog.developpez.com/web/p106..._en_javascript
    https://www.developpez.net/forums/d1...te-javascript/
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 165
    Points
    17 165
    Par défaut
    Salut

    Pour infos, ton </head> est mal placé
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  6. #6
    Membre actif
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2009
    Messages
    458
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Septembre 2009
    Messages : 458
    Points : 237
    Points
    237
    Par défaut
    Bonsoir,

    Merci pour toutes ces explications SpaceFrog, je suis obligé de faire comme la prof (pour le moment) et je vais rester sur ce qu'il m'apprend.
    Mais comment je fais pour résoudre mon soucis?

  7. #7
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 452
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 452
    Points : 4 601
    Points
    4 601
    Par défaut
    pour completer les autres (desole pour ta prof) mais prompt(), au meme titre que confirm() et alert() vont etre supprime de chrome (et surement des autres navigateurs) developers.google.com/web/updates/2017/03/dialogs-policy
    il existe deja des alternatives developer.mozilla.org/fr/docs/Web/HTML/Element/dialog (ou alors carrement en refaire une "a la mano" en JS)

    je ne peux que t'inviter a monter les liens de SpaceFrog (et les miens) a ta prof afin qu'elle se mette a jour

    pour ton probleme de do/while, j'ai l'impression de voire les tutos en C que tu executes dans un terminal ^^
    ce n'est pas comme ca qu'il faut "utiliser" le JS

    tu crees des elements et tu leurs attache un listener (pour attendre l'action de l'utilisateur)
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    comme sus dit ... la balise de fermeture du head n'est pas placé correctement

    de plus do while ... j'ai du le voir en js la dernière fois en 1902 ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    while (condition) {
    .../...
    }

    Manifestement soit le manuel source est très poussiéreux ou alors ce sont des adaptation maladroits en js .
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  9. #9
    Membre actif
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2009
    Messages
    458
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Septembre 2009
    Messages : 458
    Points : 237
    Points
    237
    Par défaut
    Citation Envoyé par Doksuri Voir le message
    pour completer les autres (desole pour ta prof) mais prompt(), au meme titre que confirm() et alert() vont etre supprime de chrome (et surement des autres navigateurs) developers.google.com/web/updates/2017/03/dialogs-policy
    il existe deja des alternatives developer.mozilla.org/fr/docs/Web/HTML/Element/dialog (ou alors carrement en refaire une "a la mano" en JS)

    je ne peux que t'inviter a monter les liens de SpaceFrog (et les miens) a ta prof afin qu'elle se mette a jour
    Merci pour l'ensemble de vos renseignement c'est comme même incroyable, parce ce que ce qu'on apprend à l'école ne sert visiblement à rien.
    Par exemple lorsqu'on veut récupéré une info sur un formulaire HTML, on utilise le .value() je pense que c'est aussi obsolète ?

    pour ton probleme de do/while, j'ai l'impression de voire les tutos en C que tu executes dans un terminal ^^
    ce n'est pas comme ca qu'il faut "utiliser" le JS

    tu crees des elements et tu leurs attache un listener (pour attendre l'action de l'utilisateur)[/QUOTE]

    Oui effectivement, il s'agit des mêmes tutos en C


    Citation Envoyé par SpaceFrog Voir le message

    de plus do while ... j'ai du le voir en js la dernière fois en 1902 ...


    Manifestement soit le manuel source est très poussiéreux ou alors ce sont des adaptation maladroits en js .


    Je vais faire comme la prof nous enseigne, dès que j'aurai réussi le module je vais m'acheter un livre en JavaScript et apprendre par moi même.

  10. #10
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 452
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 452
    Points : 4 601
    Points
    4 601
    Par défaut
    le .value() n'est pas du tout obsolete

    tu as plein de ressources sur developpez, pas besoin d'acheter un livre qui risque d'etre obsolete dans quelques annees (mais si tu veux un support physique tu peux acheter un livre)
    javascript.developpez.com/cours
    web.developpez.com
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  11. #11
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Après réflexion il y a tout de même une petit nuance subtile entre le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    while (condition) {
    //instructions
    }
    et le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    do {
    //instructions} while (condition)
    dans le premier si la condition n'est pas vérifié les instructions ne sont jamais exécutées
    dans le second cas les instructions sont exécutées au moins une fois puis répétées tant que la condition est vraie
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. Boucle Do ..while
    Par parp1 dans le forum Général Python
    Réponses: 2
    Dernier message: 11/06/2006, 13h32
  2. Réponses: 13
    Dernier message: 20/03/2006, 16h26
  3. [VBA] Boucle Do While
    Par jmde dans le forum Access
    Réponses: 4
    Dernier message: 16/10/2005, 20h23
  4. probleme de recordset dans une boucle do while
    Par Shoryu dans le forum ASP
    Réponses: 18
    Dernier message: 05/07/2004, 15h30
  5. Appel recurssif et boucle Do...While
    Par zsoh dans le forum Langage
    Réponses: 6
    Dernier message: 31/05/2004, 18h01

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