Batch if else [Résolu/Fermé]

Signaler
Messages postés
72
Date d'inscription
lundi 9 mars 2009
Statut
Membre
Dernière intervention
25 août 2013
-
 H34DSh0T -
Bonjour,
je n'arrive pas a faire une condition si... alors sinon
set /p choix=Que voulez vous faire ? ( inscrivez le numero 1,2 ou 3 ) :
if "%choix%"=="1" (echo bonjour)
if "%choix%"=="2" ( echo coucou )
if "%choix%"=="3" (echo aurevoir)
else ( echo vous n'avez pas inscrit le bon numero )

lorsque j'inscris le numero 1,2 ou 3 j'ai bien le message qui correspond mais en dessous ça me met que le else n'est pas reconnu en tant que commande et si j'inscris le numero 4 par exemple ou autre j'aimerai obtenir le message "vous n'avez pas inscrit le bon numero " mais ça me met toujours le probleme du else .

13 réponses

Messages postés
769
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
24 février 2011
160
Sinon tu peut faire sans passer par la commande else:

if "%choix%"=="1" echo bonjour
if "%choix%"=="2" echo coucou
if "%choix%"=="3" echo aurevoir
if %choix% GTR 3 echo vous n'avez pas inscrit le bon numero
GTR Ve dire "supérieur à".
Tien voila un tableau de signe que j'ai fair:
EQU - égal à
NEQ - différent de
LSS - inférieur à
LEQ - inférieur ou égal à
GTR - supérieur à
GEQ - supérieur ou égal à


Voila même si le forum est déjà résolu j'espère t'avoir aidé.
Bilou
21
Merci

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

CCM 56860 internautes nous ont dit merci ce mois-ci

Messages postés
106
Date d'inscription
mercredi 24 mars 2010
Statut
Membre
Dernière intervention
12 janvier 2013
42
Bonjour, si je tape ! ou ? rien s'affiche
Hello !
Même si le sujet est résolu voici une solution.
@echo off
:deb
cls
set choix=ppppp
:: set choix=ppppp permet après le If %choix% EQU ppppp ce qui fait que même si on entre rien et bien il remet au début
set /p choix=Que voulez-vous faire ? (1, 2 ou 3)
If %choix% EQU ppppp echo /!\Choix Invalide ! &pause &goto deb
If %choix% EQU 1 echo Vous avez entr' 1 ! &pause &goto 1
If %choix% EQU 2 echo Vous avez entr' 2 ! &pause &goto 2
If %choix% EQU 3 echo Vous avez entr' 3 ! &pause &goto 3
echo /!\Choix Invalide ! &pause
goto deb
:1
rem Actions à faire si on entre 1.
:2
rem Actions à faire si on entre 2.
:3
rem Actions à faire si on entre 3.


A plouch ^^
Messages postés
72
Date d'inscription
lundi 9 mars 2009
Statut
Membre
Dernière intervention
25 août 2013
14
c'est en batch que je veux le faire, pas en php ^^

Re,

Le else doit être sur la même ligne que le if :

set /p choix=Que voulez vous faire ? ( inscrivez le numero 1,2 ou 3 ) :
if "%choix%"=="1" (echo bonjour)
if "%choix%"=="2" ( echo coucou )
if "%choix%"=="3" (echo aurevoir) else ( echo vous n'avez pas inscrit le bon numero )
Messages postés
106
Date d'inscription
mercredi 24 mars 2010
Statut
Membre
Dernière intervention
12 janvier 2013
42
Bonjour KéKeCest !
Un probleme: si je tape 2 il affiche coucou et vous n'avez pas inscrit le bon numero

Oui en effet - je devais être saoul ce soir là (:>).

Avec un switch ca devrait aller :

set /p choix= "Que voulez vous faire ? (inscrivez le numéro 1,2 ou 3)" :
switch ("%choix%")
{
case "1" : echo "bonjour";
break;
case "2" : echo "coucou";
break;
case "3" : echo "au revoir";
break;
default : echo "vous n'avez pas inscrit le bon numero";
}
humm je ne vous en veux pas !! ^^ votre code ne marche pas mais mon code marche et c'est sertifier et tester !
@echo off
:reload
:1
:2
:3
cls
color a
set un=1
set deux=2
set trois=3
set /p choix=Entrer 1 / 2 ou 3:
if %choix%==%un% (
echo bonjour
pause>nul
goto 1
)
cls
color a
if %choix%==%deux% (
echo coucou
pause>nul
goto 2
)
cls
color a
if %choix%==%trois% (
echo au revoir
pause>nul
goto 3
)
cls
color a
echo vous n'avez pas iscrit le bon numero !
pause>nul
goto reload
Allllléluia !!...vous devriez votre code mon ami - au vu de sa complexité ca devrait intéresser grandement l'armée.
Messages postés
18187
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
31 juillet 2020
4 935
hello
comme ça, sur 1 ligne
if "%choix%"=="1" (echo bonjour) else if "%choix%"=="2" ( echo coucou ) else if "%choix%"=="3" (echo aurevoir) else ( echo vous n'avez pas inscrit le bon numero )
Messages postés
769
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
24 février 2011
160
Oui tu peut mettre tout les valeur que tu veut mais pour ton batch il faut mettre 3.
Bilou.
Messages postés
769
Date d'inscription
dimanche 2 décembre 2007
Statut
Membre
Dernière intervention
24 février 2011
160
Non je crois tu na pas bien comprit.
Si l'utilateur repond 6 a la variable %choix%
Il ne vas pas afficher:
bonjour
ou
coucou
ou
aurevoir.

Mais vue que 6 est plus grand que 3 il va mettre:
vous n'avez pas inscrit le bon numero

Voila.
Bilou.
Messages postés
106
Date d'inscription
mercredi 24 mars 2010
Statut
Membre
Dernière intervention
12 janvier 2013
42
Bonjour il est possible en plusieurs lignes

if "%choix%"=="1" ( 
echo bonjour 
) else if "%choix%"=="2" ( 
echo coucou 
) else if "%choix%"=="3" ( 
echo aurevoir 
)  else echo vous n'avez pas inscrit le bon numero

Avec un switch ce sera peut être plus élégant (vois + haut).

(Note : le topic initial date de plus d'un an et est résolu mais merci pour lui.)

amicalement.

Slt,

En php c'est peut être elseif et non else il me semble.
Messages postés
72
Date d'inscription
lundi 9 mars 2009
Statut
Membre
Dernière intervention
25 août 2013
14
oui ça ne m'ecris plu l'erreur du else mais maintenant ça m'ecris toujours la phrase du else en + du choix que je fais.
Messages postés
72
Date d'inscription
lundi 9 mars 2009
Statut
Membre
Dernière intervention
25 août 2013
14
a oui comme ça , ça marche nikel !!
merci de ton aide ;)
a+
Messages postés
72
Date d'inscription
lundi 9 mars 2009
Statut
Membre
Dernière intervention
25 août 2013
14
a oui pas bete ^^
mais a la place de mettre GTR 3, on pourrait pas mettre NEQ 1,2 and 3 ?
merci
Messages postés
72
Date d'inscription
lundi 9 mars 2009
Statut
Membre
Dernière intervention
25 août 2013
14
oui mais je voulais dire, si c'est different du choix 1, du choix 2 et du choix 3 ( les 3 valeur en meme temp )
si c'etait possible ?
Messages postés
72
Date d'inscription
lundi 9 mars 2009
Statut
Membre
Dernière intervention
25 août 2013
14
a ok, la j'ai bien compris ^^
merci