Ajouter une valeur à une variable

Résolu
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

  1. Contributeur
    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
    1. 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!
      1. 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
      2. 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!