Tornar a l'índex d'aquest tutorial!


QBasic Turorial 6

En este capítulo vamos a escribir un menú simple de programa que puede ser usado en muchos de tus propios programas sólo cortándolo e insertándolo en él. Puedes necesitar cambiar un par de cosas, tales como el texto en el que está escrito en pantalla. Antes de seguir aquí tienes el código que debes escribir.

CLS
SCREEN 12 COLOR 12 LOCATE 3, 35 PRINT "Menú Principal del Usuario" LOCATE 4, 35 PRINT "------------------------------------" COLOR 10 LOCATE 10, 35 PRINT "1. Suma" LOCATE 12, 35 PRINT "2. Resta" LOCATE 14, 35 PRINT "3. División" LOCATE 16, 35 PRINT "4. Multiplicación" COLOR 6 LOCATE 25, 32 INPUT "Introduce un Número (1-4):", número SELECT CASE número CASE 1 PRINT "Has seleccionado el número 1" CASE 2 PRINT "Has seleccionado el número 2" CASE 3 PRINT "Has seleccionado el número 3" CASE 4 PRINT "Has seleccionado el número 4" CASE ELSE PRINT "El número que has seleccionado no era de 1 a 4" END SELECT

¡Oh sí! Las cosas están empezando a ponerse emocionantes. Tómate un minuto y repásate el código. Como puedes ver contiene bastantes cosas de las que has aprendido hasta ahora. La única parte que no has aprendido es ésta:

SELECT CASE número
CASE 1
PRINT "Has seleccionado el numero 1"
CASE 2
PRINT "Has seleccionado el número 2"
CASE 3
PRINT "Has seleccionado el número 3"
CASE 4
PRINT "Has seleccionado el número 4"
CASE ELSE (CUALQUIER CASO)
PRINT "El número que has seleccionado no era de 1 a 4)
END SELECT

Confía en mi, esta parte es muy fácil. Primero vamos a echar un breve vistazo al significado de la sentencia "SELECT CASE".

La sentencia "SELECT CASE" te permite ejecutar una de las muchas sentencias de un bloque. Por ejemplo una sentencia de un bloque es esto:

CASE 2
PRINT "Has seleccionado el número 2"

En el programa principal anterior tenemos 5 sentencias en un bloque que son "CASE 1", "CASE 2", "CASE 3", "CASE 4" y "CASE ELSE". Dentro de la parte "SELECT CASE" del programa anterior, la primera línea dice:

SELECT CASE número

Este comando pregunta para ejecutar una sentencia de un bloque en la que está contenida la variable llamada "número". Si echas un vistazo a esta parte del programa verás que tenemos un comando "INPUT" que está preguntando al usuario un número. El comando "SELECT CASE número" usará cualquier sentencia del bloque que se pregunte. Así que si yo escribo "2", dentro del programa, la sentencia "SELECT CASE" usará el "CASE 2", y luego ejecutará cualquier cosa que esté contenida en el programa después de esta y antes de que la frase "CASE 3" aparezca.

El comando "CASE ELSE" es usado sólo en caso de que el usuario no haya puesto un número de 0 a 4. Si el comando "SELECT CASE número" no encuentre un caso al que referir lo que ha escrito el usuario lo referirá al "CASE ELSE" para dar un mensaje de error o cualquier cosa que el usuario pregunte.

Avanzando con "SELECT CASE"

Vamos a evolucionar algo que es un poco más avanzado que el primer programa de "SELECT CASE". Dentro del siguiente programa vamos a utilizar un comando llamado "TO". Podrás ver lo que hace después, pero antes vamos a escribir el programa que mostramos debajo y correrlo presionando "F5".
CLS
SCREEN 12
COLOR 12
LOCATE 3, 35
PRINT "Menú del Usuario Principal"
LOCATE 4, 35
PRINT "-----------------------------------"
COLOR 10
LOCATE 10, 35
PRINT "1-2. Suma"
LOCATE 12, 35
PRINT "3-4. Resta"
LOCATE 14, 35
PRINT "5-6. División"
LOCATE 16, 35
COLOR 6
LOCATE 25, 32
INPUT "Número Entero (1-8):", número
SELECT CASE número
CASE 1 TO 2
PRINT "Has seleccionado el número 1 ó 2"
CASE 3 TO 4
PRINT "Has seleccionado el número 3 ó 4"
CASE 5 TO 6
CASE 7 TO 8
PRINT "Has seleccionado el número 7 ó 8"
CASE ELSE
PRINT "El número elegido no es de 1 a 8"
END SELECT

Al primer vistazo puede no parecerte diferente del primer programa, pero debes darte cuenta de que insertamos la sentencia "TO" dentro de "SELECT CASE", "END SELECT" forma parte del programa. La sentencia "TO" te permite introducir un rango de algo dentro de la sentencia "SELECT CASE" e incluso dentro de los bucles "NEXT" y "FOR". Recuerda que has usado "TO" dentro de las sentencias "NEXT" y "FOR" en capítulos anteriores.

El programa actual te permitirás responder no sólo a uno, si no a dos números seleccionados dentro del rango. Así que para ejecutar la cuarta sentencia "CASE" necesitarías escribir 7 u 8 en el programa cuando se está corriendo.

El comando de abajo es de sentido común y puede ser comprendido si piensas en qué está haciendo el programa. En el siguiente capítulo te adentraré en un camino en el que manejarás números dentro del programa. Te he explicado brevemente el uso en turoriales anteriores. Vamos a echar un vistazo más a esto un poco más en profundidad. Gracias por leer esto hasta ahora.


Tornar a l'índex d'aquest tutorial!


© 1995-97, etsimo WWW team