Set /a pour les lettre

Fermé
lttl60 - 15 août 2011 à 16:30
 lttl60 - 28 août 2011 à 00:34
Bonjour,
voila mon problème
je coner set /a variable=%variable%+1
en commande dos pour ajouter 1 a une variable
mai je recherche l'équivalent pour les lettre
merci


A voir également:

10 réponses

cchristian Messages postés 921 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 6 mars 2012 131
15 août 2011 à 21:07
Bonsoir,

Qu'entends-tu par:

je coner set /a variable=%variable%+1
en commande dos pour ajouter 1 a une variable
mai <gras>je recherche l'équivalent pour les lettre </gras>

Quel résultat comptes-tu obtenir en ajoutant une valeur numérique à une variable non numérique ?

Par exemple:
SET "Variable=a"
Ajout de la valeur 1 à %Variable% = ???????
0
Logitux Messages postés 102 Date d'inscription lundi 30 mai 2011 Statut Membre Dernière intervention 28 septembre 2011 8
16 août 2011 à 10:43
Bonjour,

Si ce que tu cherches à faire est de modifier la variable comme ceci :
A -> B -> C -> etc...

Le seul moyen existant en batch est de le faire à l'aide d'une boucle for

FOR %%variable IN (a,b,c,d,e,f,g) DO (ECHO %%variable)


Tu peux ensuite rajouter des conditions suivant ce que tu cherches à récupérer.
0
je n'arrive pas a faire fonctionner ton code
je ne comprend pas le fonctionnement

il ne trouve pas variable2 (h)
set variable2=h

:boucle
if %variable%==%variable2% ECHO %variable%
FOR %variable% IN (a,b,c,d,e,f,g) DO (ECHO %variable%)
goto boucle
0
Logitux Messages postés 102 Date d'inscription lundi 30 mai 2011 Statut Membre Dernière intervention 28 septembre 2011 8
17 août 2011 à 08:54
C'est normal. La condition "IF" se trouve avant le "FOR"
Globalement, il teste si la variable est égale à "h",
Ensuite il passe dans le FOR et à chaque passage il affichera la nouvelle valeur de %variable%.
Une fois la boucle FOR terminée, %variable% contiendra "g" et retournera à ":boucle" et ainsi de suite

Déjà, ne met pas "%variable%" mais bien "%%variable". (J'avoue ne plus en connaître la raison exact.)
Pour tester la condition IF, il faut simplement la mettre dans la boucle for. C'est à dire;

FOR %%variable IN (a,b,c,d,e,f,g) DO (IF %%variable==%variable2% (ECHO %%variable))

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
je n'arrive a rien sa plante a chaque foi donne moi toute les ligne stp ou un site


set lettre=h
echo %lettre%
pause




:boucle
for "%%varialbe" in (a,b,c,d,e,f,g) do (if %%varialbe==%lettre% (echo %%varialbe))
goto boucle
0
cchristian Messages postés 921 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 6 mars 2012 131
Modifié par cchristian le 28/08/2011 à 16:32
Bonsoir,

Essaie celà:

set "lettre=h"
echo Lettre recherchee: %lettre%
pause

rem :boucle ==> FOR EST DEJA UNE BOUCLE EN SOI.
rem for "%%varialbe" in (a,b,c,d,e,f,g) do (if %%varialbe==%lettre% (echo %%varialbe))

  FOR      %%I    IN (a,b,c,d,e,f,g,h)  DO       ( 
       IF  %%I        ==        %lettre%        ( 
             echo Lettre trouvee: %%I           ))

rem goto boucle

 PAUSE 
 GOTO   :EOF

Cordialement.
Cchristian.
0
juste une dernier question comment utiliser plus loin cette variable
0
cchristian Messages postés 921 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 6 mars 2012 131
28 août 2011 à 00:13
Bonsoir,

Désolé pour le temps mis à répondre, j'étais absent cette semaine.

rem Initialisation da la variable de sauvegarde ici Pres_Var:
SET  "Pres_Var="
FOR      %%I    IN (a,b,c,d,e,f,g,h)  DO       (
       IF  %%I        ==        %lettre%        (
rem Préservation du contenu de la variable %%I dans une
rem  variable classique: ici Pres_Var. En effet, %%I ne peut être utilisée que dans le corps de la boucle/commande FOR (comme dans le test précédent par exemple). D'où la nécessité de préserver son contenu pour une utilisation hors de la portée de la boucle/commande FOR (voir exemple ci-dessous).
             SET  "Pres_Var=%%I"
             echo Lettre trouvee: %%I           ))

.....................
.....................
rem  Par exemple: utlisation de la variable Pres_Var dans un IF: 
IF  "%Pres_Var%"              ==  ""           (
     echo Lettre %lettre% non trouvee.    )
.....................
.....................


0
Le problème c que je souterer l'utiliser tout le long du fichier
0
désoler mai c bon merci de tes renseignement et de ta paciens
0