Problème avec mes lignes de codes

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...

2 réponses

  1. Modérateur
    Bonjour,

    Et si tu fais :
    set test=500 
    

    1. 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...
    2. @WartozIl 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)
  2. 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.”
    1. 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
    2. @WartozDe 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.
    3. D'accord maintenant je vois le principe mais... Les points d'exclamation servent à lier deux variable entre %?
    4. @WartozPas exactement, ça sert à retarder l'expansion de la variable, c'est quand la valeur de la variable n'est pas connue d'avance.
    5. 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%