Programme en batch

Résolu
Bonjour,
j'aimerais faire un peti jeu en batch du style "trouver un nombre mystère" !
donc voila je ne sais pas trop comment m'y prendre mais j'ai pensé a faire un code comme ceci :

@echo off
set /P nombrechoisi=Quel est le nombre mystere ?
set /A nombremystere==650
If %nombrechoisi%<%nombremystere% ( echo c'est superieur !) else (
If %nombrechoisi%>%nombremystere% ( echo c'est inferieur !) else (il faut choisir entre 1 et 1000 ) )
pause

sachant que si on trouve pas le bon nombre il faudrait que le question se remette .... une boucle quoi !

P.S: je sais que ce code est archi faux mais c'étais pour vous montrez un peu ce que je voulais !

voila donc si quelqu'un pouvait m'aidez il sera le bienvenue ^^
merci d'avance @+
Configuration: Windows Vista
Firefox 2.0.0.14

6 réponses

  1. Salut,

    J'espère que ça va t'aider (marche sous windows 2000) :

    @echo off
    :DEBUT
    set /P nombrechoisi=Quel est le nombre mystere ?
    set nombremystere=650
    If %nombrechoisi% GTR %nombremystere% GOTO SUPERIEUR
    If %nombrechoisi% LSS %nombremystere% GOTO INFERIEUR
    GOTO FIN
    :SUPERIEUR
    echo nombre supérieur
    GOTO DEBUT
    :INFERIEUR
    echo nombre inférieur
    GOTO DEBUT
    :FIN
    Echo bien joué

    pause

    Bonne chance
    0
    1. salut ,
      merci beaucoup ça marche nikel !
      juste un peti detail tu avais inversé GTR et LSS ....

      et est-ce tu connais un truc pour que quand je lance le programme ça choisissse un nombre au hasard , histoire que ça reste pas tou le temp a 650 ^^

      merci
      0
      1. Bonjour,

        Tu peux mettre

        SET nombremystere=%RANDOM%

        ça va te donnez un nombre aléatoire entre 1 et 32767

        si tu desire avoir un nombre compris entre 100 et 999 par exemple :

        @echo off
        :NOMBRE_ALEA
        SET nombremystere=%RANDOM%
        IF %nombremystere% GTR 999 GOTO NOMBRE_ALEA
        IF %nombremystere% LSS 100 GOTO NOMBRE_ALEA
        :DEBUT
        set /P nombrechoisi=Quel est le nombre mystere ?
        If %nombrechoisi% GTR %nombremystere% GOTO SUPERIEUR
        If %nombrechoisi% LSS %nombremystere% GOTO INFERIEUR
        GOTO FIN
        :SUPERIEUR
        echo nombre supérieur
        GOTO DEBUT
        :INFERIEUR
        echo nombre inférieur
        GOTO DEBUT
        :FIN
        Echo bien joué

        pause
        0
        1. Voici la version corrigé

          @echo off   
          :NOMBRE_ALEA   
          SET nombremystere=%RANDOM%   
          IF %nombremystere% GTR 1000 GOTO NOMBRE_ALEA   
          IF %nombremystere% LSS 1 GOTO NOMBRE_ALEA   
          :DEBUT   
          set /P nombrechoisi=Quel est le nombre mystere ?   
          If %nombrechoisi% LSS %nombremystere% GOTO SUPERIEUR   
          If %nombrechoisi% GTR %nombremystere% GOTO INFERIEUR   
          GOTO FIN   
          :SUPERIEUR   
          echo nombre sup'rieur   
          GOTO DEBUT   
          :INFERIEUR   
          echo nombre inf'rieur   
          GOTO DEBUT   
          :FIN   
          Echo bien jou'  
          
          pause

          Les accents s'affichent correctement
          0
      2. SALUT,
        merci beaucoup pour ton aide ça marche impec !
        a+
        0
        1. C'est quand meme gros mais voici le code
          @echo off   
          set /a nombremystere=(%random%%%1000)+1   
          :Jeu   
          set /p nombrechoisi=Quel est le nombre mystere ?ÿ   
          if %nombremystere% gtr %nombrechoisi% echo C'est superieur   
          if %nombremystere% lss %nombrechoisi% echo C'est inferieur   
          if not %nombremystere%==%nombrechoisi% goto jeu   
          echo Vous avez trouve le nombre mystere!   
          rem Vous pouvez changer le texte qui est à la ligne precedente(sauf echo)pause >nul

          Ceci est le code pour le jeu entre 1 et 1000
          0
          1. peut etre est-ce trop tard mais
            quand je lance le bat peut inporte que le nombre soit inférieur ou suppérieur il me mais fo chifre inferieur plz aide
            0
            1. pour pouvoir t'aider faudrai mettre ton code!
              0
            2. @echo off
              :NOMBRE_ALEA
              SET nombremystere=%RANDOM%
              IF %nombremystere% GTR 999 GOTO NOMBRE_ALEA
              IF %nombremystere% LSS 100 GOTO NOMBRE_ALEA
              :DEBUT
              set /P nombrechoisi=Quel est le nombre mystere ?
              If %nombrechoisi% GTR %nombremystere% GOTO SUPERIEUR
              If %nombrechoisi% LSS %nombremystere% GOTO INFERIEUR
              GOTO FIN
              :SUPERIEUR
              echo nombre supérieur
              GOTO DEBUT
              :INFERIEUR
              echo nombre inférieur
              GOTO DEBUT
              :FIN
              Echo bien joué

              pause
              0