Partiamo da un programma fatto così:
CODICE:
@echo off
IF %1==DO
IF %1==RE
IF %1==MI
IF %1==FA
IF %1==SOL
IF %1==LA
IF %1==SI
IF %1==esci
pause
Non è possibile scrivere più di un comando in un if, ma dobbiamo trovare un modo per poterci muovere nel programma, andare cioè in piccoli pezzi, uscendo dalla sequenzialità delle operazioni.
Ciò che ci serve è un SEGNAPOSTO, a cui possiamo assegnare un nome. Un segnaposto si crea in questo modo:
:nomesegnaposto
dove "nomesegnaposto" può essere uno qualsiasi. Si possono eseguire le istruzioni di un segnaposto tramite GOTO che ha questa sintassi:
GOTO nomesegnaposto
Adesso modifichiamo l'esempio
CODICE:
@echo off
:main
IF %1==DO GOTO do
IF %1==RE GOTO re
IF %1==MI GOTO mi
IF %1==FA GOTO fa
IF %1==SOL GOTO sol
IF %1==LA GOTO la
IF %1==SI GOTO si
IF %1==esci GOTO close
:do
echo Hai scelto DO
goto close
:re
echo Hai scelto RE
goto close
:mi
echo Hai scelto MI
goto close
:fa
echo Hai scelto FA
goto close
:sol
echo Hai scelto SOL
goto close
:la
echo Hai scelto LA
goto close
:si
echo Hai scelto SI
goto close
:close
pause
Il codice è un po' lunghetto, ma ora potrebbe servirci un codice per chiudere il prompt. Il comando che serve al nostro caso è:
EXIT
Adesso nel codice di prima, cambiamo i comandi del segnaposto "close" in:
:close
pause
exit
Fate una prova...
CODICE:
@echo off
IF %1==DO
IF %1==RE
IF %1==MI
IF %1==FA
IF %1==SOL
IF %1==LA
IF %1==SI
IF %1==esci
pause
Non è possibile scrivere più di un comando in un if, ma dobbiamo trovare un modo per poterci muovere nel programma, andare cioè in piccoli pezzi, uscendo dalla sequenzialità delle operazioni.
Ciò che ci serve è un SEGNAPOSTO, a cui possiamo assegnare un nome. Un segnaposto si crea in questo modo:
:nomesegnaposto
dove "nomesegnaposto" può essere uno qualsiasi. Si possono eseguire le istruzioni di un segnaposto tramite GOTO che ha questa sintassi:
GOTO nomesegnaposto
Adesso modifichiamo l'esempio
CODICE:
@echo off
:main
IF %1==DO GOTO do
IF %1==RE GOTO re
IF %1==MI GOTO mi
IF %1==FA GOTO fa
IF %1==SOL GOTO sol
IF %1==LA GOTO la
IF %1==SI GOTO si
IF %1==esci GOTO close
:do
echo Hai scelto DO
goto close
:re
echo Hai scelto RE
goto close
:mi
echo Hai scelto MI
goto close
:fa
echo Hai scelto FA
goto close
:sol
echo Hai scelto SOL
goto close
:la
echo Hai scelto LA
goto close
:si
echo Hai scelto SI
goto close
:close
pause
Il codice è un po' lunghetto, ma ora potrebbe servirci un codice per chiudere il prompt. Il comando che serve al nostro caso è:
EXIT
Adesso nel codice di prima, cambiamo i comandi del segnaposto "close" in:
:close
pause
exit
Fate una prova...
A cura di: Membro non piu' appartenente alla Community