Variable qui ne s'incrémente pas dans un batch [Résolu/Fermé]

Signaler
-
 random -
Bonjour à tous.

Pour me familiariser avec la programmation dans les fichiers .bat, j'ai voulu créer un petit programme qui fais changer les couleurs de cmd en boucle. J'ai donc créé une boucle avec un if et une variable qui s'incrémente à chaque tour. Voici le code. (je sais que le goto n'est pas au bon endroit)

set /a variable="0"
:retour
echo %variable%
pause
if "%variable%" leq "16" (
 set /a variable="%variable%+1"
)
goto retour

Le programme marche parfaitement pour les 2 premières boucle. Après cela, l'opération n'a plus l'air d'avoir effet et la variable reste à la valeur 2.

Merci d'avance pour vos réponses

1 réponse

Messages postés
29129
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
12 juillet 2020
6 501
Bonjour,

Tu ne devrais pas mettre de " " sur les nombres. Lors du test il doit y avoir un test non numérique, mais alphabétique où "2" est supérieur à "16", le test se faisant sur le 1er caractère.

set /a variable=0
:retour
echo %variable%
pause
if %variable% leq 16 (
  set /a variable=%variable%+1
  goto retour
)


Cdlt
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60672 internautes nous ont dit merci ce mois-ci

Aaaaah merci beaucoup !