Ajouter une valeur à une variable

Résolu/Fermé
tigl Messages postés 35 Date d'inscription jeudi 18 juillet 2013 Statut Membre Dernière intervention 30 avril 2014 - 12 févr. 2014 à 16:01
tigl Messages postés 35 Date d'inscription jeudi 18 juillet 2013 Statut Membre Dernière intervention 30 avril 2014 - 14 févr. 2014 à 17:27
Bonjour,
J'aime bien programmer dans les .bat ^^
Alors je me suis lancé dans une sorte de mini logiciel avec des questions et qui ensuite affiche un résultat, et j'ai besoin de pouvoir ajouter/soustraire un nombre à une variable (vous comprendrez mieux de quoi je parle quand je vais vous dire ce que j'ai essayé) Je poste ici car je n'ai pas trouvé sur internet.

Donc j'ai essayé plusieurs choses, comme


set /P q1=Qui a créé Minecraft? Notch, Hugo ou Eliott?
if /I %q1%==Notch goto q2 ELSE goto eq1
:eq1
set errorlevel 1
goto q2

Bien sûr goto q2 c'est pour passer à la question suivante, via :q2
Ou encore:


set /P q1=Qui a créé Minecraft? Notch, Hugo ou Gui_Master?
if /I %q1%==Notch goto q2 ELSE goto eq1
:eq1
color ee
color 0e
goto q2
"Si couleur d'arrière plan = couleur de police, alors cmd met errorlevel à 1"

Et bien sûr "set variable 1" et "add" n'existent pas...

Merci pour vos réponses!



--

2 réponses

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
13 févr. 2014 à 08:30
hello
set /a pour des opérations de calcul , help set pour les détails
C:> set /a x=0
0
C:> set /a x+=1
1
C:> set /a x+=10
11
C:> echo %x%
11
3
tigl Messages postés 35 Date d'inscription jeudi 18 juillet 2013 Statut Membre Dernière intervention 30 avril 2014 2
Modifié par tigl le 13/02/2014 à 14:50
Merci, ça fonctionne beaucoup mieux, mais le problème c'est que j'ai répondu aux questions soit avec les bonnes soit avec autre chose, mais il affiche le résultat pendant une fraction de seconde puis se ferme... et je ne trouve pas l'erreur...

@echo off
color 0e
set :cr
set :com
set :q2
set :q3
set :q4
set :q5
set :q6
set :q7
set :q8
set :q9
set :q10
set :eq1
set :eq2
set :eq3
set :eq4
set :eq5
set :eq6
set :eq7
set :eq8
set :eq9
set :eq10
set :res
set :r100
set :r90
set :r80
set :r70
set :r60
set :r50
set :r40
set :r30
set :r20
set :r10
set :r0
set /A x=0
set /A b=0
set :F
goto cr
:cr
cls
@echo ==========================
@echo = Logiciel par Hugo = v1.5
@echo = (c) Hugo Minilogiciels =
@echo ==========================
@echo '
if %b%==0 goto com ELSE pause
:com
@echo Le test va commencer!
@echo A la fin de ce test, une barre qui montre votre niveau de connaissances

@echo sur Minecraft va s'afficher.
@echo Ecrivez simplement le choix parmi les propositions
@echo(respecter les majuscules.
set /P q1=Qui a cree Minecraft? Notch, Hugo ou Eliott?
if /I %q1%==Notch goto q2 ELSE goto eq1
:eq1
set /A x+=1
goto q2
echo drgsergsehsethsethstehdhssxtrhsr
:q2
set /P q2=Ou se trouve l'Enderdragon? Nether, Enderman, Overworld ou Ender?
if /I %q2%==Ender goto q3 ELSE goto eq2
:eq2
set /A x+=1
goto q3
:q3
set /P q3=Comment traire une vache? Pelle, Sceau, Boire ou Bouteille?
if %q3%==Sceau goto q4 ELSE goto eq3
:eq3
set /A x+=1
goto q4
:q4
set /P q4=Ou trouve t-on les champimeuhs? Champiville, PNJ ou Ile-champignon?
if %q4%==Ile-champignon goto q5 ELSE goto eq4
:eq4
set /A x+=1
goto q5
:q5
set /P q5=Que font les endermans quand on les regarde? Degats, TP ou Attaque?
if %q5%==Attaque goto res ELSE goto eq5
:eq5
set /A x+=1
goto res


echo NOTE: CE N'EST PAS FINI


:res
if %x%==0 goto r100
if %x%==1 goto r90
if %x%==2 goto r80
if %x%==3 goto r70
if %x%==4 goto r60
if %x%==5 goto r50
if %x%==6 goto r40
if %x%==7 goto r30
if %x%==8 goto r20
if %x%==9 goto r10
if %x%==10 goto r0

:r100
@echo Felicitations!
@echo Expert PRO de Minecraft!
@echo 0% 50% 100%
@echo |²²²²²²²²²²²²²²²²²²²²|
@echo resultat: 100% !!
goto F
:r90
@echo Felicitations!
@echo Expert de Minecraft!
@echo 0% 50% 100%
@echo |²²²²²²²²²²²²²²²²²²__|
@echo resultat: 90% !!
goto F
:r80
@echo Tres bien!
@echo Expert de Minecraft!
@echo 0% 50% 100%
@echo |²²²²²²²²²²²²²²²²____|
@echo resultat: 80% !!
goto F
:r70
@echo Bien!!
@echo Bonnes connaissances de Minecraft!
@echo 0% 50% 100%
@echo |²²²²²²²²²²²²²²______|
@echo resultat: 70% !!
goto F
:r60
@echo Ca va!
@echo Connaissances moyennes de Minecraft!
@echo 0% 50% 100%
@echo |²²²²²²²²²²²²________|
@echo resultat: 60% !!
goto F
:r50
@echo Ca va!
@echo Connaissances tres moyennes de Minecraft!
@echo 0% 50% 100%
@echo |²²²²²²²²²²__________|
@echo resultat: 50% !!
goto F
:r40
@echo Presque!
@echo Noob superieur de Minecraft!
@echo 0% 50% 100%
@echo |²²²²²²²²____________|
@echo resultat: 40% !!
goto F
:r30
@echo Outch...
@echo Noob superieur de Minecraft!
@echo 0% 50% 100%
@echo |²²²²²²______________|
@echo resultat: 30% !!
goto F
:r20
@echo Dommage...
@echo Noob de Minecraft...
@echo 0% 50% 100%
@echo |²²²²________________|
@echo resultat: 20% !!
goto F
:r10
@echo Dommage...
@echo Noob de Minecraft...
@echo 0% 50% 100%
@echo |²²__________________|
@echo resultat: 10% !!
goto F
:r0
@echo Dommage...
@echo Pire noob de Minecraft...
@echo 0% 50% 100%
@echo |__________________|
@echo resultat: 00% !!
goto F
:F
@echo Voila, j'espere que vous avez aime ce test!
@echo Vous pouvez fermer.
set /a b+=4
set /p CFI=Pour stopper, taper sur 1, pour voir la fin taper sur 2.
if %CFI%==1 PAUSE ELSE goto cr

Donc la variable :b est pour ne pas relancer le jeu en cas où après :F on tape 2

NOTE: il manque la moitié des questions et ce jeu est pour le fun!
0
tigl Messages postés 35 Date d'inscription jeudi 18 juillet 2013 Statut Membre Dernière intervention 30 avril 2014 2
Modifié par tigl le 13/02/2014 à 19:41
Voila j'ai (enfin) trouvé!
Je voulais voir ce que ça donnait ça mais juste tout seul, pour voir si les ² ne faisaient pas planter. Mais ce sont les | qui allaient pas! Donc ça marche!

@echo Bien!!
@echo Bonnes connaissances de Minecraft!
@echo 0% 50% 100%
@echo |²²²²²²²²²²²²²²______|
@echo resultat: 70% !!
Reste un problème.
J'ai enregistré en tant que Script MS DOS afin que les accents soient visibles.
Mais le ² pour faire ? ne marche pas!
Alors comment faire (ce caractère ne passe pas sur ce site)??
J'ai essayé, mais ça me dit que au format ANSI ces caractères ne passent pas. En effet ça me met autre chose... Donc SVP comment mettre ces trucs ?? ^^'
Je parle de ça
https://www.google.fr/search?q=%E2%96%93&oq=%E2%96%93&aqs=chrome..69i57j0l5.582j0j4&sourceid=chrome&espv=210&es_sm=122&ie=UTF-8
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 févr. 2014 à 08:09
0
tigl Messages postés 35 Date d'inscription jeudi 18 juillet 2013 Statut Membre Dernière intervention 30 avril 2014 2
14 févr. 2014 à 17:27
Super ça marche, les accents passent et quand je met ² ça me met le caractère spécial dont j'ai besoin! [Résolu° et merci!
0