Intentaré ir haciendo pequeños programas bat, explicando el código empleado para que cualquiera lo entienda.

sábado, 28 de junio de 2008

CREANDO MENÚS: IF, GOTO ELSE

En la creación de menús son muy importantes los comandos if goto y else. Su utilización es un poco complicada pero con mi ayuda la entenderéis fácilmente.
El comando if establece una condición entre una variable y su valor.
El comando goto da un salto en el programa si se cumple la condición a una subrutina que se encabeza con los ":" y un nombre.
El comando else es la opción que se realizará si todo lo demás falla.

Lo mejor es verlo con un ejemplo:

@echo off
:menu
echo ELIGE ENTRE ESTOS COLORES: azul, rojo, verde
set /p colorin=¿Que color eliges?
if %colorin%==azul goto azulin
if %colorin%==rojo goto rojin
if %colorin%==verde goto verdin

:azulin
cls
echo HAS ELEGIDO EL COLOR AZUL
pause
exit

:rojin
cls
echo HAS ELEGIDO EL COLOR ROJO
pause
exit

:verdin
cls
echo HAS ELEGIDO EL COLOR VERDE
pause
exit


La utilización de IF... GOTO.... ELSE es algo más compleja pero básicamente ELSE se utiliza cuando no se cumple la condición. La sintaxis sería:
if condicion (goto menu1) else goto menu2 -------------- (goto menu1) debe ir entre paréntesis siempre

Con este ejemplo lo comprenderemos:

@echo off
:menu
cls
echo ¿Eres guapo?
set /p contesta=si o no
if %contesta%==si (goto creido) else goto sorpresa
:sorpresa
if %contesta%==no (goto feillo) else goto menu
:creido
cls
echo ESO NO TE LO CREES NI TU
pause
exit

:feillo
cls
echo POBRECILLO, COMPRATE UNA MASCARA
pause
exit


Si contestamos algo que no sea si o no entonces se repite el menú inicial.





***

No hay comentarios: