Objetivos Objetivos
  • Aprender a utilizar condiciones en Gambas.
Fuentes de información Fuentes de información
  • http://www.gambas-es.org
  • Libro “GAMBAS, programación visual con Software Libre”, de la editorial EDIT LIN EDITORIAL S.L., cuyos autores son Daniel Campos Fernández y José Luis Redrejo.
  • Libro “Fundamentos de programación”, de la editorial Univ. Politécnica de Valencia, cuyos autores son Mª Alpuente Fresnedo y otros.
Contenidos
Contenidos
 

1. Palabras reservadas

BASIC (en este caso la versión Gambas), como cualquier lenguaje de programación, tiene una serie de palabras reservadas que sólo podemos utilizar para escribir instrucciones de programa, es decir, no podemos usarlas como nombre de variable, etc.

La lista de palabras reservadas es la siguiente:

BREAK

CASE

CONTINUE

DEFAULT

DO

ELSE

END

ENDIF

WITH

FOR

FOR EACH

GOTO

IF

LOOP

NEXT

QUIT

REPEAT

RETURN

SELECT

STEP

THEN

TO

UNTIL

WAIT

WEND

WHILE

WITH




La mejor forma de entender estas palabras es ir introduciéndolas gradualmente con ejemplos. En lugar de ir haciéndolo por orden alfabético, iremos explicándolas según sus tipos de funcionalidad.

2. Control de flujo

Todo el código BASIC que hemos visto hasta ahora ejecuta sus instrucciones de arriba abajo, según se las va encontrando. La ejecución de instrucciones una a una, en el mismo orden en que aparecen en el programa, se denomina ejecución secuencial.

Control de flujo

Si un ordenador no pudiese ejecutar instrucciones más que en orden secuencial, no pasaría de ser más que una buena calculadora de bolsillo. Pero un ordenador puede también tomar decisiones en función de determinadas condiciones; es decir, según sea el valor de determinadas variables en el momento de la ejecución del programa, el computador decide si ha de seguir ejecutando una parte del programa u otra.

De este modo, con frecuencia, habrá que volver atrás, repetir cosas, tomar decisiones, etc. Este tipo de acciones se denomina Control de flujo y el BASIC de Gambas proporciona un buen juego de sentencias para manejarlo.

3. Instrucciones condicionales simples

La selección condicional simple o binaria, admite dos opciones. Es la sentencia más común para tomar una decisión: si se cumple una condición, entonces se ejecuta algo, en caso contrario, se ejecuta otra cosa.

Sintaxis:

IF ... THEN ... ELSE

Que quiere decir: SI condición ENTONCES instrucción1 SI NO instrucción2

Siendo opcional el ELSE, ya que puede que no haya acción en caso de que no se cumpla la condición.

Su forma más básica es:

1 instrucción

2 o más instrucciones

IF Expresión THEN sentencia_a_ejecutar

IF Expresión THEN

instruc1

instruc2

….

ENDIF

La cláusula IF se usa para selecciones binarias (2 posibilidades). La expresión que se evalúa (condición) ha de ser de tipo booleano y por tanto tomará como valor TRUE o FALSE.

Tras un THEN o un ELSE, se puede utilizar cualquier tipo de instrucción o incluso otras sentencias de selección.

IF .. THEN .. ELSE

A continuación vamos a crear un programa con una sencilla condición.

  • Abrimos Gambas.
  • Hacemos clic en la opción Nuevo proyecto.
  • Marcamos la opción Aplicación de consola y hacemos clic en el botón Siguiente.

Aplicación de consola

  • Seleccionamos en nuestro directorio personal el directorio BASIC/1MTEXTO creado anteriormente Documentos/BASIC/1MTEXTO.

Ruta

  • Hacemos clic en el botón Siguiente.
  • Le damos un nombre y título al proyecto. En el primer campo escribimos “09PrgCondiciones”. En el segundo campo escribimos “Proyecto operaciones con instrucciones condicionales”. El asistente creará un nuevo directorio con el nombre del proyecto (campo 1) y ahí irá introduciendo todos los archivos necesarios para el desarrollo de la aplicación.
  • Hacemos clic en OK.

Vamos a crear un núevo módulo para nuestro programa.

  • Hacemos clic con el botón derecho del ratón sobre el árbol de carpetas. Aparecerá un menú contextual. Elegimos la opción Nuevo→Módulo.
  • Surgirá una ventana en la que escribimos el nombre del Módulo: “Condiciones”. Pulsamos el botón OK.
  • Hacemos clic con el botón derecho del ratón sobre el nuevo módulo y marcamos la opción Clase de inicio.
  • Escribimos en el módulo el siguiente código:

Código fuente

  • Ejecutamos el programa. ¿Qué ocurre? La consola no nos mostrará ningún resultado.
  • Cambiamos el valor de edad a 20 y ejecutamos el programa. ¿Tampoco? Si nos fijamos en la condición, nuestro programa considera adultos a las personas cuya edad sea mayor que 20.
  • Cambiamos el valor a 21 y volvemos a probar. Ahora sí.
  • La consola nos mostrará el resultado:

Ejecución

  • Modificamos el programa para mejorar el funcionamiento:

Código fuente

  • Ejecutamos el programa con distintos valores de Edad. Dependiendo del valor que tenga la variable Edad al llegar al primer IF, se imprimirá un resultado distinto.
  • Guardamos los cambios del proyecto.
Ejercicios
Ejercicio
 
  • Sube a la plataforma la captura de la pantalla donde se vea la ejecución del programa Condiciones que acabas de hacer y la mayor parte del código fuente que has escrito.

 

Ejercicios
Ejercicio
 
  • Ahora sin ayuda y aplicando todo lo que has aprendido hasta el momento deberás modificar el programa para leer la edad por teclado.

Sugerencias:

  • Sigue con el proyecto “09PrgCondiciones”.
  • Crea un nuevo módulo. Llámalo “EdadTeclado” y márcalo como Clase de inicio.
  • En el comentario de la parte superior deberás poner "Este programa ha sido creado por TU NOMBRE Y APELLIDOS
  • Copia el contenido del módulo que hemos hecho anteriormente, Condiciones.
  • Define 1 variable de tipo string para el número leído por teclado
  • Lee 1 número, conviértelo a entero y almacenalo en la variable Edad. En la ejecución se deberá solicitar el número al usuario.
  • Deja el resto del código como está.
  • Ejecuta el programa y verificar que funciona correctamente.
  • Guarda los cambios en tu proyecto.
  • Sube a la plataforma la captura de la pantalla donde se vea la ejecución del programa EdadTeclado que acabas de hacer y la mayor parte del código fuente que has escrito.
  • Sube también el fichero llamado EdadTeclado.module que podrás encontrar dentro de la carpeta del proyecto 09PrgCondiciones.

 

Fuentes de información Sugerencias

Sería interesante que te guardaras en una memoria USB todo el contenido de la carpeta BASIC de tus documentos, para evitar que cualquier problema con el ordenador te haga perder tus ejercicios.