Estructura de un Programa en Pascal

Por

Un programa en Lenguaje Pascal puede estar compuesto de instrucciones y otros elementos, como variables, constantes, procedimientos, etcétera. Todos estos elementos deben ensamblarse adecuadamente, siguiendo siempre un mismo orden y distribución dentro del programa que los contenga. Por lo tanto, al momento de escribir un programa en Pascal, se deben colocar cada uno de sus elementos siguiendo la estructura del diagrama que se indica a continuación:

Estructura general de un programa en Lenguaje Pascal
Figura 1. Diagrama de la estructura general de un programa en Pascal

El encabezado del programa, la cláusula opcional Uses, y el cuerpo del programa, constituyen la base principal de la estructura del diseño de cualquier programa en Pascal. Es importante que usted primero conozca bien a fondo los principales bloques o secciones que componen un programa en Pascal; para luego entender cómo todos ellos se deben incluir al momento de elaborar un programa.

Encabezado del programa

La primera sección del programa corresponde al encabezado, en éste se especifica el nombre y los parámetros del programa; esta sección es simplemente informativa y no tiene ningún efecto sobre el programa en si. El encabezado del programa empieza con la palabra reservada Program, seguida del nombre que queremos dar al programa. La sintaxis para esta sección es la siguiente:

PROGRAM Nombre;

Donde, Nombre es el identificador que representa el nombre que se le dará al programa. Al especificar este nombre se deben seguir ciertas reglas, las cuales puede consultar en el tema sobre identificadores, publicado en otro artículo de este blog. Por ejemplo:

Program Mi_Programa;

El encabezado del programa se puede omitir, pero se recomienda añadirlo para mantener compatibilidad con algunas versiones antiguas de compiladores de Pascal.

Cláusula Uses

Esta sección sigue después del encabezado, y en ella se deben especificar las unidades que serán utilizadas por el programa. Las unidades son módulos independientes que contienen una serie de constantes, procedimientos, y funciones, que ayudan a simplificar la programación de ciertas tareas dentro de un programa. Estas unidades se encuentran incorporadas en un archivo externo; y se pueden vincular en cualquier programa mediante la instrucción Uses.

Algunas de las unidades más utilizadas, son las unidades System, Crt, Dos, Graph, y Printer; varias de éstas se encuentran incluidas dentro la librería ejecutable de Turbo Pascal. Para indicarle al programa que utilice una unidad específica, o una colección de unidades, se debe escribir la palabra reservada Uses, seguida por una lista con los nombres de las unidades que quiera utilizar, separados por comas (,). Por ejemplo,

USES Crt, Graph;

Una unidad también puede considerarse como un pequeño subprograma externo, el cual usted puede utilizar en cualquier programa como un auxiliar que permita simplificar procesos complejos en procedimientos más simples. Cuando no se requiera el uso de unidades, la cláusula Uses debe ser omitida.

Cuerpo del programa

Después del encabezado y la cláusula Uses comienza el cuerpo del programa; y tal como podemos ver en el diagrama de la figura 1, éste a su vez se divide en otros tres bloques más pequeños: el bloque de declaraciones, el bloque de funciones y procedimientos, y el bloque principal de instrucciones; cada bloque se describe brevemente a continuación.

El bloque de declaraciones

Es donde se especifican todos los elementos que requiere el programa para funcionar correctamente, tales como etiquetas, tipos de datos, constantes y variables. Al momento de declarar estos elementos, lo único que debemos tener en cuenta es que deben declararse después del encabezado; o después de la cláusula Uses, si ésta se encuentra presente.

Para las declaraciones se utilizan las sentencias Label, Const, Type, y Var; según cada clase de elementos que se vayan a declarar. Cuando en un programa no se requiere declarar ningún elemento, la sección de declaraciones estará ausente en el código fuente del programa. Observe como en el ejemplo siguiente se declaran dos constantes y dos variables:

CONST
  Pi = 3.1416;
  MiMensaje = '¡BIENVENIDOS!'; 

VAR
  NombreCliente: string[15];
  EdadCliente: Integer;

Las sentencias de declaraciones se deben escribir en el mismo orden establecido en la estructura general del programa; ya que las especificaciones del Estándar ISO para Pascal así lo requieren (ver fig. 1).

El bloque de funciones y procedimientos

Es donde el programador puede definir sus propias funciones y procedimientos, que luego podrá invocar en cualquier parte del bloque principal de instrucciones. Las funciones y procedimientos son similares a pequeños subprogramas dentro del programa principal, los cuales permiten dividir la lógica de un programa muy extenso en fragmentos más pequeños, y fáciles de manejar.

Para definir una función, o un procedimiento, se utilizan las palabras reservadas Function y Procedure respectivamente, veremos más sobre este tema en otro artículo.

El bloque principal de instrucciones

Es el que contiene las instrucciones que llevarán a cabo todas las acciones principales del programa, cuando inicie su ejecución en un computador. Las instrucciones de este bloque se encuentran acotadas entre las últimas palabras Begin (Inicio) y End (Fin). La sintaxis empleada para implementar este bloque es la siguiente:

BEGIN

   Sentencia 1; 
   Sentencia 2;
   Sentencia 3;

   ...
   
   Sentencia n; 

END.

Es importante tener en cuenta, que además del bloque principal de instrucciones, existen otras estructuras de programación en Pascal, que también acotan sus instrucciones entre las palabras Begin y End; como es el caso de las funciones, los procedimientos, y las instrucciones compuestas que estudiáremos en otro momento.

Reglas sintácticas

Todas las instrucciones que describen las acciones de un programa, también hacen parte de la estructura del programa; por lo tanto, al momento de escribirlas debemos tener en cuenta las siguientes reglas:

  • El Lenguaje Pascal no es sensitivo al teclado, esto significa, que no distingue entre letras mayúsculas y minúsculas; por lo tanto, las instrucciones pueden escribirse sin problemas usando ambos formatos de letras.
  • Las líneas de instrucciones pueden tener una longitud máxima de 126 caracteres.
  • Todas las instrucciones simples deben separarse unas de otra mediante punto y coma (;), aunque éste puede omitirse en la última instrucción de una secuencia de instrucciones.
  • La palabra end de un bloque de instrucción compuesta debe finalizar con punto y coma (;), éste puede omitirse si corresponde a un último bloque de instrucciones.
  • La palabra end del bloque principal de instruciones debe finalizar con punto (.).

Escribiendo un programa en Pascal

Un programa en Pascal bastantemente sencillo, estará compuesto por un encabezado, una clausula Uses, y por un cuerpo de programa formado únicamente por el bloque principal de instrucciones. Para ilustrar un programa semejante al descrito, veamos el ejemplo que se muestra a continuación:

Program Bienvenida;

Uses Crt;

Begin

   Clrscr;
   Writeln ('¡Bienvenidos al curso de Lenguaje Pascal!');
   Readkey;

End.

El programa anterior sólo contiene tres instrucciones, aunque se podrían añadir muchas más. Toda la lógica de este programa, se encuentra en su bloque principal de instrucciones, delimitado entre las palabras begin y end. En este programa, fue necesario incluir la unidad Crt, para poder invocar al procedimiento Clrscr y a la función Readkey; también, se puede observar que no fue necesario colocar el bloque de declaraciones, ni el bloque de funciones y procedimientos.

El código del programa que aquí se acaba de describir, tal como está, se puede ejecutar en un compilador como Turbo Pascal o Free Pascal, o en el intérprete de N-IDE Pascal.

Manos a la obra

A partir de ahora, un encabezado, una clausula Uses, un cuerpo de programa compuesto por unas cuantas instrucciones, y un compilador de Pascal; es todo lo que usted necesita para empezar a crear sencillas aplicaciones; todo lo demás depende de su capacidad creativa e investigativa.