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

Discussion: Boucle do while

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    septembre 2009
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : septembre 2009
    Messages : 253
    Points : 110
    Points
    110

    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
    38 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    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 : 38 037
    Points : 65 040
    Points
    65 040
    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


    réalisations :www.oxygen-translations.fr|www.saftair.fr| www.ouestisol.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
    Humour

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    septembre 2009
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : septembre 2009
    Messages : 253
    Points : 110
    Points
    110

    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
    38 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    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 : 38 037
    Points : 65 040
    Points
    65 040
    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


    réalisations :www.oxygen-translations.fr|www.saftair.fr| www.ouestisol.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
    Humour

  5. #5
    Rédacteur/Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    décembre 2004
    Messages
    4 662
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Savoie (Rhône Alpes)

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

    Informations forums :
    Inscription : décembre 2004
    Messages : 4 662
    Points : 10 267
    Points
    10 267

    Par défaut

    Salut

    Pour infos, ton </head> est mal placé
    ProgElecT
    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.
    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.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    septembre 2009
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : septembre 2009
    Messages : 253
    Points : 110
    Points
    110

    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
    Membre émérite
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    juin 2006
    Messages
    1 617
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : juin 2006
    Messages : 1 617
    Points : 2 500
    Points
    2 500

    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.

  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
    38 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    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 : 38 037
    Points : 65 040
    Points
    65 040
    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


    réalisations :www.oxygen-translations.fr|www.saftair.fr| www.ouestisol.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
    Humour

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    septembre 2009
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : septembre 2009
    Messages : 253
    Points : 110
    Points
    110

    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
    Membre émérite
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    juin 2006
    Messages
    1 617
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : juin 2006
    Messages : 1 617
    Points : 2 500
    Points
    2 500

    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.

  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
    38 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    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 : 38 037
    Points : 65 040
    Points
    65 040
    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


    réalisations :www.oxygen-translations.fr|www.saftair.fr| www.ouestisol.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
    Humour

Discussions similaires

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

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