Problème avec mes lignes de codes

Wartoz Messages postés 30 Date d'inscription   Statut Membre Dernière intervention   -  
BatchTEAM Messages postés 12 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous!

Voilà cela fait un petit temps que je pratique la programmation et me voila bloqué!
Je suis en train d'écrire un programme en batch.
Je vous retranscris mon problème...

>set test=%random%
>echo %random%
>15462 (exemple)

C'est là que les choses deviennent compliquées...
je souhaite faire:

>set %test%=500

Mais quand je met:

>echo %test%

Il me réponds

>15462

Quelqu'un aurait une solution?

Merci de prendre sur votre temps pour me répondre...
A voir également:

2 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Et si tu fais :
set test=500 

1
Wartoz Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Non non.
Parce que le principe c'est que je fais une sorte de base de donnée avec des fichiers <<client>> donc avec un %random% défini en titre (pour un numéro client) mais je voulais faire en sorte de pouvoir rentrer un montant d'objet mais qu'il les retienne et donc qu'il l'assimile au %random%

Je sais pas si tu comprends... Et désolé de ne pouvoir faire plus clair...
0
Wartoz Messages postés 30 Date d'inscription   Statut Membre Dernière intervention   > Wartoz Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Il faudrait vraiment que j'arrive à insérer le %test% dans mon
set %test%=500

Car ce ne sera pas une variable que je pourrai fixer à l'avance... mais que le programme devra utilier après qu'un utilisateur est introduit la variable %test%

J'espère que tu comprends un peu mieux le bazar qui règne dans ma tête mais en tout cas merci de prendre de ton temps pour me répondre (je ne pensais pas que ça irait aussi vite haha)
0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Bonsoir,

Je ne suis pas sûr d'avoir parfaitement compris, est-ce que je suis sur la bonne voie ?

@echo off
setlocal enableextensions enableDelayedExpansion

set /a client=0

:boucle

set /a client=%client%+1

set /a num%client%=%random%

set /a montant%client%=500

echo. & echo. & echo [%client%] - numero client : !num%client%! ==^>^> montant : !montant%client%!

echo. & pause

goto :boucle

endlocal
exit



“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
0
Wartoz Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Je suis pas sûr d'avoir tout compris dans tes manip... Tu sais expliquer un peu ? :)
Je débute en batch et tout ce que je sais je l'ai appris en mode autodidacte quoi...
Merci
0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925 > Wartoz Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
De ce que je comprend de ton problème tu cherches à lier des informations façon base de données.

Dans mon script j'utilise 2 variables (!num%client%! et !montant%client%!) qui sont liées par l'intermédiaire d'une 3ème variable (%client%) qui sert de dénominateur.

Désolé j'ai du mal à expliquer mieux.
0
Wartoz Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
D'accord maintenant je vois le principe mais... Les points d'exclamation servent à lier deux variable entre %?
0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925 > Wartoz Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Pas exactement, ça sert à retarder l'expansion de la variable, c'est quand la valeur de la variable n'est pas connue d'avance.
0
BatchTEAM Messages postés 12 Date d'inscription   Statut Membre Dernière intervention   1
 
Qu'est ce que tu essaye de faire exactement ? Tu veut garder l'ancien résultat et le nouveau en plus ?
si oui, voila :

Début :
set test=%random%
echo Variable : %test%


Fin :
set test=%random%,%test%
echo Liste : %test%
0