Jan
20
Resumen:
Datos
21
2.1. INTRODUCCIN
En este captulo se ver cul es la estructura de un programa en TurboPascal, pero antes
es conveniente aclarar algunos trminos:
Pascal es un lenguaje de programacin de ordenadores de propsito general.
TurboPascal es la versin mas extendida del lenguaje Pascal. Desarrollado por la
compaa Borland ms tarde denominada Inprise.
Delphi es una herramienta visual para Windows desarrollada por Borland basada en
Pascal.
TurboPascal es una versin actualizada y ampliada de Pascal, el lenguaje de
programacin creado por Niklaus Wirth con fines acadmicos a principios de los 70. Entre otras
extensiones, TurboPascal ampla la capacidad de manejar tipos de datos numricos, introduce el
tipo cadena (string), facilita y ampla el uso de los archivos y punteros y potencia el uso de
las unidades. Estas modificaciones confieren a este lenguaje una mayor potencia a costa de
restarle posibilidades a sus programas fuente de ser migrados a otros sistemas que no admitan
tales extensiones de TurboPascal.
Los programas se disean para resolver un problema determinado utilizando diversos
datos en una serie de etapas: entrada de datos, almacenamiento de stos, operaciones, obtencin
de resultados y salida de los mismos. Para mantener un orden, la Programacin Estructurada
organiza el programa mediante una secuencia de pasos a seguir evitando saltos o laberintos.
Dentro de esta secuencia de pasos pueden utilizarse acciones alternativas bajo rboles de
condiciones y acciones repetitivas o bucles.
Seccin
CABECERA
SECCIN
o ZONA DE
DECLARACIONES
PROGRAM
Unidades
Etiquetas
Constantes
Tipos
Variables
Funciones y
Procedimientos
USES
LABEL
CONST
TYPE
VAR
FUNCTION
PROCEDURE
BEGIN
...
END.
2.3. CABECERA
La cabecera de un programa es opcional y puramente informativa. Si existe se compone
de una nica sentencia que sirve para asociar un nombre o identificador al programa. Ms
adelante, en la seccin 2.10 de este captulo, se indicarn las secuencias de caracteres que
22
pueden utilizarse como identificadores. Este identificador no tiene por qu ser necesariamente el
mismo que el del archivo fuente que lo contiene, ni que el del archivo ejecutable una vez
compilado. La cabecera, como, en general, cualquier otra sentencia de un programa, se separa
de las dems sentencias con un carcter de punto y coma.
Sintaxis: PROGRAM Nombre_Programa;
Declaracin de etiquetas
Declaracin de constantes
Las constantes son datos que no cambian durante la ejecucin del programa y que se
definen durante el tiempo de compilacin.
Sintaxis:
CONST Nombre_Constante = Expresion_1;
Nombre_Constante_2 = Expresin_2;
Datos
23
Nombre_Constante_3 = Expresin_3;...
Si se declaran varias constantes en un programa podrn incluirse en una nica sentencia
CONST separando cada declaracin de las dems con caracteres de punto y coma, aunque
tambin puede haber varias sentencias CONST en la seccin de declaraciones de un programa.
Ej.:
2.4.4.
Const Pi = 3.1415;
{ constante numerica real }
Limite = 325;
{ constante numerica entera }
Saludo = 'Hola!';
{ cadena de caracteres }
Declaracin de variables
24
Sintaxis:
VAR Variable_1,Var_2,...,Var_n: Tipo;
Si se declaran varias variables en un programa podrn incluirse en una nica sentencia
VAR separando cada declaracin de las dems con caracteres de punto y coma, aunque tambin
puede haber varias sentencias VAR en la seccin de declaraciones de un programa.
Ej.:
VAR
x,y,z
: Real;
i,j
condicion
nota
libra
:
:
:
:
Integer;
estado;
digito;
dia;
En el ejemplo anterior se declaran ocho variables de las cuales las cinco primeras son de
tipos predefinidos por TurboPascal (tres de tipo Real y dos de tipo Integer,
respectivamente) y las tres ltimas aprovechan las declaraciones de tipos de dato del ejemplo de
apartado anterior.
Al declarar una variable se reserva espacio en memoria para almacenar los valores que
va tomando dicha variable durante la ejecucin del programa. La cantidad de memoria
reservada depender del tipo de variable. Una variable de tipo Integer es una variable
numrica entera que ocupa 2 bytes (16 bits) de memoria, mientras que una de tipo Real, es una
variable numrica real que necesita 6 bytes (48 bits).
2.4.6.
Function Media(x1,x2:Real):Real;
BEGIN
Media:=(x1+x2)/2
END;
Procedure Cuadro;
BEGIN
WriteLn('*********************');
WriteLn('*
*');
WriteLn('*********************')
END;
Datos
25
2.6. COMENTARIOS
Los comentarios son sentencias que pueden incluirse en, prcticamente, cualquier parte
del programa y que son ignorados por el compilador (el traductor del cdigo del programa
fuente!). Slo sirven para dar informacin o explicaciones sobre el conjunto o alguna parte del
programa a la persona que lea el cdigo fuente. Esto cobra especial importancia cuando se trata
de un cdigo ms o menos complejo o desarrollado por un equipo de programadores. Los
comentarios suelen ir delimitados entre caracteres de llaves: { y } o entre las parejas de
caracteres (* y *).
Ej.:
{ Esto es un comentario }
(* Esto tambien es un comentario *)
(* Este otro comentario ocupa
mas de una linea *)
26
Datos
27
Icono de
BorlandPascal
28
Figura 6. Edicin del programa fuente en el entorno de Borland Pascal 7.0 (modo protegido)
Una vez escrito el texto del programa fuente se aconseja almacenarlo con un nombre
determinado, por ejemplo adicion, en el disco. Para realizar dicha accin, se selecciona la
opcin File/Save as y se escribe el nombre en la ventana de dilogo que aparece (Figura 7).
Al pulsar la opcin OK, el archivo es almacenado en disco con el nombre adicion.pas.
Por defecto, los archivos que almacenan programas fuente tienen extensin .pas.
Figura 7. Almacenamiento en disco del archivo adicion.pas que contiene el cdigo fuente del
programa
Datos
29
El programa tambin puede ser ejecutado desde el terminal DOS escribiendo el nombre
del archivo ejecutable en la lnea de comandos (Figura 10).
30
Figura 10. Ejecucin del programa adicion.exe desde el terminal DOS de Windows
2.10. IDENTIFICADORES
Un identificador es un nombre de un programa, una variable, una constante, un tipo de
dato, una funcin, un procedimiento, una etiqueta, una unidad o un campo de una estructura en
un programa de TurboPascal. Existen identificadores que tienen ya un significado definido en
TurboPascal y otros nuevos cuyo significado el programador puede definir. En el programa
ejemplo anterior, program, Adicion, Crt, a, b, c, Integer, begin, Linea, son
identificadores. Los identificadores slo existen en el cdigo del programa fuente y no en el
programa objeto (que es el resultado de la compilacin del programa fuente correspondiente).
En TurboPascal todo nuevo identificador se debe definir unvocamente con anterioridad a su
utilizacin.
2.10.1.
Para construir un identificador es necesario seguir una serie de normas que se dan a
continuacin:
1.
Un identificador se compone de una sucesin de letras, dgitos decimales y caracteres de
subrayado. No son vlidos otros caracteres, por ejemplo, caracteres de espacio en blanco
o guiones. Pueden tener cualquier longitud pero slo los primeros 63 caracteres son
significativos.
2.
Dicha sucesin debe empezar por una letra o un carcter de subrayado.
3.
En un programa no puede declararse un mismo identificador ms de una vez. Con las
excepciones que se vern en los captulos de Rutinas y Unidades.
4.
En los identificadores no se diferencian los caracteres en maysculas de las minsculas
(Por ejemplo: DiaMes = Diames = diames = DIAMES).
5.
Existen una serie de palabras reservadas que no se pueden utilizar como identificadores
(ver en el siguiente apartado del captulo, por ejemplo, BEGIN) y otras que tienen un
significado definido en TurboPascal (por ejemplo, WRITELN) y que, en este ltimo
caso, podran redefinirse (se les puede dar otro empleo) lo que no es nada recomendable
por su habitual utilizacin.
6.
Aunque no es una norma de obligado cumplimiento, es conveniente utilizar
identificadores significativos para orientar al usuario o a cualquier otra persona que
accede al programa fuente sobre lo que representan.
Algunos ejemplos de identificadores no vlidos son: Dia-semana, Dia semana,
2mes o Const. En el primer ejemplo se ha utilizado un carcter no vlido (-); en el segundo
identificador, tambin (el espacio en blanco); el tercero, empieza por un carcter numrico y el
cuarto es una palabra reservada del lenguaje de programacin TurboPascal. Algunos ejemplos
Datos
31
de identificadores vlidos son: Dia_semana, Mes2 o Constante. Por otro lado y como se
ver ms adelante, en TurboPascal no est prohibido emplear el mismo identificador en distintas
unidades. En este caso, para determinar la referencia en el programa es necesario anteponer al
identificador de lo que se quiera referenciar el nombre de la unidad correspondiente seguido de
un punto: unidad.identificador. Esto es lo que se denomina un identificador
cualificado.
Para su diferenciacin de los dems elementos en los ejemplos incluidos en esta
publicacin los identificadores se escribirn en el tipo de letra Courier.
2.10.2.
(directiva
(directiva
(directiva
(directiva
(directiva
de
de
de
de
de
procedimiento)
procedimiento)
procedimiento)
procedimiento)
procedimiento)
(directiva de procedimiento)
(directiva de procedimiento)
(directiva de procedimiento)
asm
case
destructor
downto
exports
function
implementation
inline
library
not
or
program
set
string
type
uses
with
array
const
div
else
file
goto
in
interface
mod
object
packed
record
shl
then
unit
var
xor
32
Bibliografa bsica