Salut,
Je fais un jeu du + ou moins, mais j'ai un soucis, j'instaure des niveaux de difficultés, donc je met des if et des set, et des echo.
Mais ca pose problème:
je n'ai pas mis @echo on pour plus de visibilité (je tiens à préciser que ça fait environ 1-2h que j'ai commencé à apprendre le batch, desolé si il y a des notions que je ne comprends pas.)
script:
log:
Code : 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
45
46
47
48
49
50 :again echo Bienvenue dans le jeu du + ou moins ! Entre ton niveau de difficulté ! set /p niveau=1 pour facile, 2 pour difficile, 3 pour impossible: if niveau EQU 1 (set /a secret=%random% %% 100 + 1 echo Chiffre entre 1 et 100, 10 chances) if niveau EQU 2 (set /a secret=%random% %% 1000 + 1 echo Chiffre entre 1 et 1000, 25 chances) if niveau EQU 3 (set /a secret=%random% %% 10000 + 1 echo Chiffre entre 1 et 10000, 50 chances) echo %secret% set tentative=0 :essai if tentative == 10 (if niveau == 1 (goto perdu)) if tentative == 25 (if niveau == 2 (goto perdu)) if tentative == 50 (if niveau == 3 (goto perdu)) set /p nombre= if %nombre% LSS %secret% (echo PLUS ! goto :essai set /a tentative = %tentative% + 1) if %nombre% GTR %secret% (echo MOINS ! goto :essai set /a tentative = %tentative% + 1) if %nombre% == %secret% (echo Bravo, c'etait bien %secret%, bien joue ! goto :gagne) :gagne echo. echo Tu veux rejouer ? set /p encore=1 si oui, 0 si non: if %encore% == 1 (cls goto again) echo D'accord ! Merci d'avoir joue ! pause :perdu echo. echo Tu as epuise toutes tes chances le nombre etait %secret%, essaye un niveau de difficulte plus faible ! echo Tu veux rejouer ? set /p encore=1 si oui, 0 si non: if %encore% == 1 (cls goto again) echo D'accord ! Merci d'avoir joue ! pause
On peut voir que ça bug lorsque je lui demande d'affichier la variable secret, je suppose que c'est parce que j'ai initialisé une variable dans un if, mais je ne sais pas comment corrigé ça.C:\Users\PC-HP\Desktop>echo Bienvenue dans le jeu du + ou moins ! Entre ton nive
au de difficult├® !
Bienvenue dans le jeu du + ou moins ! Entre ton niveau de difficult├® !
C:\Users\PC-HP\Desktop>set /p niveau=1 pour facile, 2 pour difficile, 3 pour imp
ossible:
1 pour facile, 2 pour difficile, 3 pour impossible: 2
C:\Users\PC-HP\Desktop>if niveau EQU 1 (
set /a secret=22467 % 100 + 1
echo Chiffre entre 1 et 100, 10 chances
)
C:\Users\PC-HP\Desktop>if niveau EQU 2 (
set /a secret=13642 % 1000 + 1
echo Chiffre entre 1 et 1000, 25 chances
)
C:\Users\PC-HP\Desktop>if niveau EQU 3 (
set /a secret=19091 % 10000 + 1
echo Chiffre entre 1 et 10000, 50 chances
)
C:\Users\PC-HP\Desktop>echo
Commande ECHO activée.
C:\Users\PC-HP\Desktop>set tentative=0
C:\Users\PC-HP\Desktop>if tentative == 10 (if niveau == 1 (goto perdu ) )
C:\Users\PC-HP\Desktop>if tentative == 25 (if niveau == 2 (goto perdu ) )
C:\Users\PC-HP\Desktop>if tentative == 50 (if niveau == 3 (goto perdu ) )
C:\Users\PC-HP\Desktop>set /p nombre=
3
C:\Users\PC-HP\Desktop>if 3 LSS (echo PLUS !
C:\Users\PC-HP\Desktop>goto :essai
C:\Users\PC-HP\Desktop>if tentative == 10 (if niveau == 1 (goto perdu ) )
C:\Users\PC-HP\Desktop>if tentative == 25 (if niveau == 2 (goto perdu ) )
C:\Users\PC-HP\Desktop>if tentative == 50 (if niveau == 3 (goto perdu ) )
C:\Users\PC-HP\Desktop>set /p nombre=
Dans la console, je tape respectivement: 2, puis 3
Merci pour votre aide !
Partager