Alterner Réponses dans Batch

Bonjour, pourez vous me dire comment alterner les réponses d'un fichier batch exemple de code

@echo off
set /p message= Que voulez-vous dire à l'ordinateur ?
Vous avez dit %message% à l'ordinateur
La l'ordianteur répond soit allo ou soit comment ça va mais comment faire pour alterner les réponses ?

Merci,
Densdemetal



--
Comptes sur moi , moi je compte sur mes doigts ! (Windows Power)

22 réponses

  1. Re,
    dans le cas dans le lien c'est un batch aléatoire redirigé avec la boucle for pour que chaque fois affiche un mot ( ou phrase qui se trouve dans le fichier phrase.txt )
    est ce que c bon pour mes explications ? car je suis pas un francais ;)
    1. La réponses de cs-bilou n'est pas adapter à mes besoin et je comrend pas trop votre réponses
      1. Non, mon code avec %random% ne marche pas, S'y quelqu'un a une idée, elle est la bienvenue
        1. mais se sera pas tout de suite, je dois faire dotre chose pour linstant
          1. non sa marche toujours po mais je pense que j'ai trouver une solution. Je reviendrai quand j'en aurrai terminer
            1. dentsdemetal,

              est c que c bon ?
              j'attend vos réponse et désolé si j'ai dit qqc qui n'est pas bon
              je te jure que je suis ici pour vous aidez ;)
              1. Re,
                pourquoi vous dites que je veut pas vous aider ? est que je dit qqc qui n'est pas bon .. donc désolé

                remplacez la ligne set var = 0 par set var=0 ( évitez l'espace entre var et = et le 0
                j'attend ta réponse
                une remarque changer %var% par !var! ou mettez a l'avant endlocal pour arreter la localisation des variable retardé
                ;)
                1. Le code fait 775 lignes j'étais pas pour toute les mettres. Maintenant si vous voulez pas m'aidez, je vais trouver quelqu'un d'autre.
                  1. vous avez entrez le variable %nom% qui n'est pas déclaré ??
                    vous avez entrer la commande goto 40 d'où l'étiquette n'existe pas ??
                    les redirection n'ont pas claire ??
                    explique quel est l'interet de votre code !!

                    A suivre ...
                    1. Non Finalement , cela ne marche pas vraiment et je ne sais pas pourquoi !
                      voici mon code

                      )
                      ping 127.0.0.1 -n 2 >NUL
                      echo Début du Chargement ...
                      echo.
                      ping 127.0.0.1 -n 1 > NUL
                      cls
                      echo Chargement
                      set nbrCaract=80
                      setlocal enableDelayedExpansion
                      for /l %%i in (1,1,%nbrCaract%) do (
                      set var=
                      for /l %%j in (1,1,%%i) do (
                      set var=!var!^Û
                      )
                      ping 0.0.0.0 -n 1 > NUL
                      cls
                      echo Chargement de %nom%.
                      echo !var!
                      )
                      set var = 0
                      set /a var = %var%+1
                      IF "%var%"=="2" (goto 900) else (goto 800 )
                      :900
                      echo Operation Echoue, Veuillez recommmencer
                      ping 0.0.0.0 n-3
                      goto 40
                      :800
                      echo.
                      echo Operation Reussie
                      echo.
                      1. est ce que c bon ?
                        car c un petit exemple c pas un vrai code a vous de choisir la valeur de VAR par exemple ( dans l'exemple il faut entrer 10 fois le message pour que le message changé
                        1. Re,
                          mais d'abord il faut déclarrer le variable var !!!
                          @echo off
                          set var = 0
                          :debut
                          set /a var = %var%+1
                          set /p message= Que voulez-vous dire à l'ordinateur ?
                          echo Vous avez dit %message% à l'ordinateur
                          IF "%var%"=="10" (echo ALLO) else (echo slt)
                          goto debut
                          pause
                          1. Dans le code :
                            set /p message= Que voulez-vous dire à l'ordinateur ?
                            echo Vous avez dit %message% à l'ordinateur
                            IF VAR == BLABLA ( set /a message = echo ALLO ) else ( set /a message = echo slt )
                            pause

                            ça dit OPPÉRATEUR MANQUANT pourquoi ?
                            1. Ah .. c bon donc il faut ajouter une condition comme par exemple :
                              IF VAR == BLABLA ( set /a message = toto ) else ( set /a message = tata )

                              telque le variable VAR est une valeur qui vous la fait ( vous pouvez a la place de VAR de faire %RANDOM% qui est une valeur aléatoire )

                              bonne chance
                              • 1
                              • 2