La mejor forma de aprender un lenguaje es programando con él. El programa más sencillo que se puede escribir en BASIC es el siguiente:
|
Como podemos imaginar, este programa sin una sola instrucción no hace nada, pero se interpreta correctamente y nos da una idea de que no se necesita mucho para empezar a programar en BASIC. Esto no es cierto en otros lenguajes como C, en los que hay que utilizar obligatoriamente encabezados de programa y limitadores de bloques de sentencias.
Un programa algo más complicado, pero que hace algo, es el siguiente:
' Este es mi primer programa en BASIC CLS PRINT "Bienvenido a la programación en lenguaje BASIC" END |
Con él visualizamos en la pantalla el mensaje:
Bienvenido a la programación en lenguaje BASIC |
En el programa se incluye la línea:
CLS |
Esta línea constituye una sentencia. La sentencia consta únicamente de la instrucción CLS , y ésta produce el resultado de borrar la pantalla.
La siguiente sentencia incluye la instrucción PRINT. Ésta toma como argumento una cadena de caracteres limitados por dobles comillas " " y la imprime en la salida habitual, que generalmente es la pantalla del PC en el que trabajamos.
La instrucción END termina el programa. Ni siquiera es obligatorio finalizar con END, aunque es conveniente por una cuestión de claridad. De cualquier manera, si extraemos esa sentencia, el programa funcionará exactamente igual (el programa finaliza automáticamente cuando no se encuentran más líneas de código).
La inclusión de comentarios en un programa es una saludable práctica, como lo reconocerá cualquiera que haya tratado de leer un listado hecho por otro programador o por sí mismo, varios meses atrás. Para el intérprete o el compilador, los comentarios son inexistentes, por lo que no generan líneas de código ejecutable, permitiendo abundar en ellos tanto como se desee. En el lenguaje BASIC se toma como comentario todo carácter que sigue a la comilla simple: ' o a la palabra clave REM.
Como se observa, un programa en QBasic es simplemente un fichero de caracteres que contiene un conjunto de instrucciones que un programa especial, el intérprete, se encarga de transformar en un código que la computadora puede ejecutar (aunque no se genera un archivo .EXE).
Antes de continuar hagamos un inciso sobre la nomenclatura utilizada en QBasic para designar a distintos elementos del lenguaje:
Elemento | Definición |
---|---|
Sentencia Instrucción (Comando) |
Es una instrucción que realiza una operación. Se utilizan estas palabras de forma intercambiable. Se usa mucho la forma comando debido a su utilización en inglés. |
Palabra clave Keyword |
Una palabra que forma parte del lenguaje QBasic. Cuando se utiliza una palabra clave en una sentencia, QBasic automáticamente la convierte a mayúsculas. No se puede utilizar una palabra clave para dar nombre a una constante o variable (palabra reservada). |
Cadena String |
Una cadena de texto (caracteres). En Qbasic se delimita con comillas, por ejemplo, "Bienvenido". La cadena "" (vacía) es válida. |
Número | Designa a números enteros, decimales de precisión simple y decimales de precisión doble. |
Constante | Un valor (cadena o número) que no cambia a lo largo de la ejecución del programa. Hay dos clases de constantes; las constantes literales están escritas directamente en el código: "Hola", 16; las constantes simbólicas o con nombre son valores constantes a los que se les asigna un nombre. Por ejemplo, LONG_MAX en lugar de 16. Las constantes simbólicas se definen usando la palabra clave CONST. |
Variable | Un contenedor con nombre para un número o una cadena. Son el medio para que el programa "recuerde" datos. Se pueden crear variables de varias maneras: calculando un valor, tomando una entrada de usuario, leyendo un archivo, etc. |
Operador | Designa una operación matemática. Los operadores pueden ser aritméticos, relacionales o lógicos. |
Función | Devuelve una cadena o un número. Puede tomar uno o más parámetros de entrada para calcular el resultado. |
Comentario | No hace nada en el programa. Se utiliza como una nota explicativa que contribuye a clarificar el código y a recordar más tarde lo que se hizo. |
Bloque | Designa a un conjunto de líneas dentro de la estructura del programa, que guardan una relación de algún tipo entre sí. |
Bucle | Designa a un grupo de líneas que se ejecutan una serie de veces. |
La estructura general de un módulo de código en QBasic consta de un programa principal y de varios subprogramas y/o funciones:
' Programa principal declaración de funciones y subprogramas declaración de variables sentencias END SUB Subprograma1 ( ) declaración de variables sentencias END SUB FUNCTION Funcion1 ( ) declaración de variables sentencias END FUNCTION ... ... ... SUB Subprograman( ) declaración de variables sentencias END SUB FUNCTION Funcionn ( ) declaración de variables sentencias END FUNCTION |
Cuando la envergadura del programa es grande se suele fragmentar el módulo en varias partes, incluyendo cada parte en un fichero separado. Normalmente colocaremos en cada fichero todas las subrutinas y funciones que se encarguen de una tarea del programa. Por tanto, un programa en QBasic puede estar formado por diferentes módulos o fuentes. Es conveniente mantener los fuentes de un tamaño no muy grande -para encadenar la ejecución de los diferentes módulos se utiliza la instrucción CHAIN (CHAIN nombre.archivo$-.