Problème Batch

Résolu
Enness Messages postés 40 Statut Membre -  
Enness Messages postés 40 Statut Membre -
Bonjour,

je cherche a faire un prg (pour rigoler...) qui choisi un chiffre en 1 et 100 et que je dois deviner.
j'ai fait ca mais dès que je tape le premier chiffre a proposer, j'ai une erreur de type ") était innatendu".

Je ne comprend pas. j'ai du surement faire une faute dans mon if mais laquelle ?

Merci de vos rep !

@echo off
set /a n=%random%%%100
echo %n%
set /P nbessai = entrer le nombre d'essai :

:jeu
set /P nbprop = "entrer un nombre... "
if %nbprop% > %n% (
echo c'est trop grand
%nbessai%=%nbessai%-1
if %nbessai%==0 ( echo tu a perdu
goto fin
)

goto jeu
)

if %nbprop% < %n% ( echo c'est trop petit
if %nbessai%==0 ( echo tu a perdu
goto fin
)
goto jeu
)

if %nbprop% = %n% ( echo t'as gagne !
goto fin
)

:fin

4 réponses

  1. karirovax Messages postés 3584 Statut Membre 215
     
    salut ;)

    il ya beaucoup des fautes dans votre code , je vous dit la solution mais en cas des questions ... je suis préneur =)

    @echo off
    set /a n=%random%%%100
    echo %n%
    set /P nbessai = entrer le nombre d'essai :

    :jeu
    set /P nbprop= "entrer un nombre... "
    if "%nbprop%" GTR "%n%" (
    echo c'est trop grand
    set /a nbessai=%nbessai%-1
    if "%nbessai%"=="0" ( echo tu a perdu
    goto fin
    )

    goto jeu
    )

    if "%nbprop%" LSS "%n%" ( echo c'est trop petit
    if "%nbessai%"=="0" ( echo tu a perdu
    goto fin
    )
    goto jeu
    )

    if "%nbprop%"=="%n%" ( echo t'as gagne !
    goto fin
    )

    :fin
    pause
    0
    1. nirG
       
      Salut, dans ton code y'a aussi une erreur :p

      if "%nbprop%" LSS "%n%" ( echo c'est trop petit  
      if "%nbessai%"=="0" ( echo tu a perdu  
      goto fin  
      )  
      goto jeu  
      ) 


      Ne pas oublier d'enlever - 1 au nombre d'essai :)

      if "%nbprop%" LSS "%n%" (  
      echo c'est trop petit 
      set /a nbessai=%nbessai%-1  
      if "%nbessai%"=="0" ( echo tu a perdu  
      goto fin  
      )  
      goto jeu  
      ) 


      Cdlt.

      nirG
      0
  2. Enness Messages postés 40 Statut Membre
     
    Merci de ton aide.
    Reste un petit soucis sur le fait que le compteur d'essai de se décrémente pas.
    J'ai essayé de modifier certaines choses mais rien à faire.
    0
  3. nirG
     
    Salut, voici une autre facon de faire :

    @echo off
    set /a n=%random%%%100 
    set /P nbessai="Entrer un nombre d'essai : "
    
    :jeu
    
    if "%nbessai%" LSS "1" (
    echo.
    echo C'est fini. Vous avez utilise tout vos essais ! Le chiffre etait : %n%
    goto fin)
    
    echo.
    set /P nbprop="Entrer un nombre : " 
    
    if "%nbprop%"=="%n%" goto win
    
    if "%nbprop%" GTR "%n%" (
    echo C est plus petit !
    goto calcul)
    
    if "%nbprop%" LSS "%n%" (
    echo C est plus grand !
    goto calcul)
    
    :calcul
    set /A nbessai=%nbessai% - 1
    goto jeu
    
    :win
    echo Vous avez trouve le bon nombre !
    
    :fin
    pause


    Cdlt.

    nirG
    0
  4. Enness Messages postés 40 Statut Membre
     
    Merci beaucoup ca marche
    0