Sie sind auf Seite 1von 11

UNIDAD 4.

ESTRUCTURA DE DATOS EN FUNCIONES Y


PROCEDIMIENTOS.

INTRODUCCIN AL TURBO PASCAL.


El lenguaje Turbo Pascal se caracteriza por ser un lenguaje de propsito general (puede
usarse en un gran nmero de diversas aplicaciones), es un lenguaje procedimental, es
estructurado (usa las estructuras repeat, for, while y no necesita go to) y recursivo, y
posee una gran riqueza de tipos de datos.
Un programa en PASCAL es un conjunto de instrucciones o sentencias, escritas segn
ciertas reglas, para realizar operaciones sobre entidades de datos conocidas como
constantes, variables y resultados de funciones.

Estructura de un programa haciendo uso del lenguaje Turbo Pascal:

PROGRAM identificador Encabezamiento

USES asocia una serie de rutinas


de control de pantalla
LABEL declaracin de etiquetas
CONST definicin de constantes Seccin de declaraciones y
TYPE declaracin de tipos de datos definiciones
definidos por el usuario
VAR declaracin de variables

FUNCTION
>PROCEDURE Declaraciones y cuerpo Seccin de subprogramas
de los subprogramas
BEGIN
Sentencias
o Cuerpo del programa o
instrucciones Seccin Ejecutable
END.

Ing. N ahiby Castillo 11


El encabezamiento
Un programa escrito en PASCAL empieza siempre con un encabezamiento que consiste
en:
La palabra reservada PROGRAM.
El nombre del programa.
Los nombres de los ficheros externos que se usan para entrada y salida. Se escriben
separados por comas y entre parntesis.
El delimitador punto y coma.

La seccin de las declaraciones


Todas las entidades definidas por el usuario que se usan en un programa deben ser
declaradas en esta seccin, indicando un identificador y lo que representa.
ETIQUETAS (LABEL)
CONSTANTES (CONST)
TIPOS (TYPE)
VARIABLES (VAR)
PROCEDIMIENTOS (PROCEDURE)
FUNCIONES (FUNCTION)
No es necesario que un programa contenga declaraciones de todas esas categoras.
Las declaraciones pueden escribirse en un orden cualquiera.
Una misma clase de declaracin puede aparecer ms de una vez. Pero una
declaracin particular no se puede repetir en un bloque.
Las etiquetas son enteros decimales que pueden usarse para sealar alguna sentencia
y hacerla accesible mediante la sentencia GOTO.

Ejemplo:
TYPE estaciones = (primavera, verano, otoo, invierno) ;
VAR letra : CHAR;
CONST pi = 3.1416 ;
LABEL 100, 200, 300 ;

Ing. N ahiby Castillo 12


La seccin ejecutable
Contiene a las sentencias que, cuando se ejecutan, realizan las acciones del programa.
La seccin ejecutable sigue a la de las declaraciones y est delimitada por BEGIN y END,
terminando en un punto.

Entre BEGIN y END puede haber sentencias condicionales, repetitivas, sentencias de


asignacin, sentencias que controlan el flujo de la ejecucin.

OBJETOS DE UN PROGRAMA EN TURBO PASCAL.


IDENTIFICADORES: un identificador es un nombre dado a un elemento de programa, tal
como una constante, una variable, un procedimiento, un programa, una funcin, una
unidad, un campo de registro, etc.

CARACTERSTICAS DE LOS IDENTIFICADORES:


Secuencia de caracteres de cualquier longitud, slo los 63 primeros son significativos.
Debe comenzar por una letra (A Z) y no puede contener blancos.
Despus del primer carcter se aceptan letras, dgitos y subrayado ( _ ).
No se pueden usar palabras reservadas.

Ejemplos vlidos: N OMBRE_APELLIDO, IMPUESTO, NOTA2, H346


Ejemplos no vlidos: NOMBRE APELLIDO, EJ?AB, 23ALX, 4NOM, &NOM

NOTA: El Turbo Pascal no distingue las letras maysculas de las minsculas en los
identificadores. Ejemplo: EDAD edad Edad son identificadores vlidos e idnticos.

PALABRAS RESERVADAS: son palabras que tienen un significado especial y que no se


pueden utilizar para otros propsitos. Las palabras reservadas no se pueden usar como
identificador.

Ejemplo de palabras reservadas: ABSOLUTE, AND, ARRAY, BEGIN, CONST, DIV, DO,
DOWNTO, ELSE, END, EXTERNAL, FILE, FOR, FORWARD, FUNCTION, GOTO, IF,
IMPLEMENTATION, IN INLINE, INTERFASE, INTERRUPT, LABEL, MOD, NIL, NOT, OF,

Ing. N ahiby Castillo 13


OR, PAKED, PROCEDURE, PROGRAM, RECORD, REPEAT, SET, SHL, SHR, STRING,
THEN, TO, TYPE, UNIT, UNTIL, USES, VAR, WHILE, WITH, XOR, etc.

DATOS: es una representacin simblica (numrica, alfabtica, algortmica etc. Cifras


originales que por si solas tienen poco significado. Son los conceptos bsicos o
elementales como el nombre de las cosas o personas, las cantidades, etc.

TIPOS DE DATOS:
DATOS NUMRICOS: conformados por dgitos, puede incluir un signo (+,-), un punto
decimal ( . ) y un exponente. No pueden contener comas ( , ) o espacios en blanco.

DATOS NUMRICOS ENTEROS (INTEGER): No contienen ni punto decimal, ni


exponente.
Ejemplo: 5 +5 -6 7343
Rango de valores posibles entre: -32768 ....32767
Enteros largos (LOGINT), su rango de valores: -2147483648 .....2147483647

DATOS NUMRICOS REALES (REAL): Deben contener punto decimal ( . ) o un


exponente o ambos.
Ejemplo: 0.0 -0.2 -314.63 0.000078 +32.45 32.45

En forma exponencial la base 10 se reemplaza por la letra E, manteniendo la forma


siguiente: nE+-dd donde n = nmero decimal y dd = exponente entero (+,- o cero) .
Ejemplo: 5.2x10-4 5.2E-4 5.2e-4 -6.784E-12 7.0E5 7.0E+5

DATOS CARACTER (CHAR): slo pueden contener un caracter y deben estar encerrados
entre apstrofes. Pueden ser una letra (A Z), un dgito ( 0 9) o un caracter especial ($,*, &,
etc.).
Ejemplo: A * 6 X
NOTA: No se pueden utilizar apstrofes cuando se introducen caracteres desde el
terminal.

Ing. N ahiby Castillo 14


DATOS CADENA (STRING): es una secuencia de caracteres (letras, dgitos o caracteres
especiales) escritos en una lnea sobre el programa y encerrados entre apstrofes,
generalmente no mayor de 255 caracteres.
Ejemplo: DIOS SI EXISTE COMO ESTAS? EDO. MERIDA
6457-AL3 2X(3+D)-J

DATOS LGICOS (BOOLEAN): pueden tomar slo dos valores:


true significa verdadero
false significa falso donde false < trae

CONSTANTES: son datos que no varan durante la ejecucin o vida del programa. El dato
simple se asocia a menudo a un IDENTIFICADOR que le proporciona un nombre al dato.
El identificador se dice que es una constante si se le asigna un dato permanente.
Las constantes deben ser declaradas antes de su utilizacin.

Forma de definicin de constantes:


CONST nombre = valor;
nombre1, nombre2, . nombren = valor;
Donde: CONST es la palabra reservada para la declaracin de constantes
nombre es un identificador que representa el nombre de la constante
valor es el dato efectivo que se asigna al nombre, el cual puede ser entero,
real, carcter, cadena, lgico, ..., conjuntos o arreglos,.. o una expresin que se
evala en tiempo de compilacin.
; punto y coma es el elemento separador de sentencias.

Ejemplos: CONST
Pi = 3.141592; Constante real
CUENTA = 632; Constante entera
Min = 0; Constante entera
SUMA = (2.5+40)/(3.5-4); Constante real
COLOR = AZUL; Constante cadena (string)
ANCHO,ALTO,LONG = 25; Constantes enteras
SEC = X; Constante caracter
Ing. N ahiby Castillo 15
NOTA: El tipo del valor asociado a la constante define el tipo de la constante. Los valores
de las constantes tipo cadena o caracter deben ser asignados entre apstrofes.

VARIABLES: Es un identificador cuyo valor puede cambiar durante la ejecucin del


programa. Cada variable debe ser declarada (definida) individualmente en la seccin de
declaracin del programa antes de ser utilizadas.

Forma de definicin de variables:


VAR nombre: tipo; o VAR nombre1, nombre2, ...nombren: tipo;

Donde: VAR: es la palabra reservada para la declaracin de variables.


nombre: es el identificador que representa el nombre de la variable.
tipo: se refiere al tipo de dato contenido en la variable. Existen tantos tipos de
variables como tipos de datos diferentes.
; punto y coma es el elemento separador de sentencias.

Ejemplos: VAR
EDAD: INTEGER;
SALARIO: REAL;
NOMB: STRING[30];
LETRA: CHAR;
NACIONALIDAD: CHAR;
CONDICION: BOOLEAN;
NOTA: Las definiciones de constantes deben preceder a las declaraciones de variables.
Ejemplo: CONST TITULO = LA CASA DE LA CULTURA;
FRAC = 0.18453;
VAR FILA, COLUMNA: INTEGER;
SB: REAL;

COMENTARIOS: es cualquier frase encerrada entre llaves { } o entre los signos (* *) que
puede acompaar a las instrucciones de un programa, sean estas de declaraciones o
pertenecientes al cuerpo del mismo.
Ejemplo: VAR EDAD: INTEGER; {Edad del estudiante}
Ing. N ahiby Castillo 16
Expresiones:
Las expresiones son combinaciones de constantes, variables, smbolos de operacin
(matemticos, lgicos y relacionales) y nombres de funciones que se utilizan en el cuerpo
del algoritmo. Las expresiones pueden ser simples o compuestas.

Las expresiones simples, son asignaciones directas a una variable o constante de un


valor numrico o carcter, vase el siguiente ejemplo:
Nombre de la Expresin Valor asignado Explicacin o anlisis
A =6 A la variable A se le asigna el valor de 6
B = DEFINITIVO A la variable B se le asigna el valor DEFINITIVO
FECHA = dd/mm/aa A la variable FECHA se le asigna una fecha dada
DLAR =2120 A la constante DOLAR se le asigna el valor 2120
A la constante PAIS se le asigna el valor
PAIS =VENEZUELA
VENEZUELA

Una expresin compuesta es la asignacin a una variable o constante que surge de la


unin de valores numricos, operadores aritmticos, de comparacin o lgicos. Por
ejemplo:
Nombre de la
Valor asignado Explicacin o anlisis
Expresin
A la variable A se le asigna el valor 12, que resulta de
A =6*2
multiplicar 6 por 2
C =A+B A la variable C se le asigna el valor de sumar A + B
La variable EDAD obtendr el resultado de restarle a la
EDAD =AOACTUAL - ANONAC
constante ANOACTUAL el valor de la variable ANOAC
La variable SUELDO tomar el valor de multiplicar los das
SUELDO =DIASTRAB*SDIARIO trabajados contenidos en la variable DIASTRAB por el
valor de salario diario contenido en SDIARIO

Expresiones Aritmticas
Son utilizadas para construir formulas matemticas. Las variables y constantes utilizadas
son de naturaleza numrica, es decir nmeros enteros o reales, y las operaciones a
efectuar son de orden aritmtico.

Operadores Aritmticos
Operadores Significado Ejemplo Interpretacin

+ Sumar SI A=10 y B=13 Resultado es: 23


- Restar A-B -3
* Multiplicar A*B 130
** Exponenciacin A**B 100.000.000.000.000
/ Divisin A/B 0,76

Ing. N ahiby Castillo 17


REGLAS PARA EVALUAR EXPRESIONES ARITMTICAS:
1. Todas las subexpresiones entre parntesis se evalan primero. Las subexpresiones con
parntesis anidados se evalan de dentro hacia fuera. El parntesis ms interno se
evala primero.

2. Prioridad de operadores aritmticos:


* / div mod se evalan primero
+ - se evalan de ltimo

Ejemplos:
4+2*5 4+10 14
23*2div5 46div5 9
3+5*(10-(2+4)) 3+5*(10-6) 3+5*4 3+20 23
(9+3)*5div4mod7+1 12*5div4mod7+1 60div4mod7+1 15mod7+1 1+1
2

Expresiones Relacionales
Se construyen a partir de los operadores relacionales (de relacin o comparacin, = , > , <
, >=, <=, <>. Los operadores relacionales sirven para expresar las condiciones en los
algoritmos. Si A=10 y B=13

Operadores Significado Ejemplo Interpretacin


> Mayor que A>B Resultado: FALSO
< Menor que A<B VERDADERO
>= Mayor igual A >= B FALSO
<= Menor igual A <= B VERDADERO
= Igual A=B FALSO
<> Diferente A <> B VERDADERO

Orden de Evaluacin
Al incluir estos operadores con los operadores aritmticos, obtenemos este nuevo orden
de evaluacin:
Prioridad Operador
1 Contenido de parntesis ()
2 *,/,div,mod
3 +,-
4 =, <, >, <=, >=, distinto a
Ing. N ahiby Castillo 18
Contador: Un contador es una variable cuyo valor se incrementa o decrementa en una
cantidad constante, cada vez que se produce un determinado suceso, accin o iteracin.
Para incluir un contador en un proceso deber seguirse Ejemplo: Se requiere obtener cuantos nmeros primos
los siguientes pasos: existen del nmero 1 hasta el 100.

Inicializar antes del ciclo Inicio


Cuentaprimo= 0
Incrementar dentro del ciclo Numero = 1

Si se requiere puede imprimirse el valor con el cual Leer Numero


finaliza el contador.
Mientras Nmero <= 100
Un contador se construye colocando el nombre del contador Aplicar frmula primo
= nombre del contador + el valor del incremento.
Si es primo Entonces
Se lee de la siguiente manera: A la variable Cuentaprimo (el Cuentaprimo = Cuentaprimo + 1
contador en este caso) se le asigna el valor que trae y se
incrementa en uno, en la primera iteracin o lectura de Imprimir Nmero
datos, el valor que trae, es 0, al ejecutarse la instruccin del
contador se incrementa en uno, y as sucesivamente hasta Fin Si
que se finalice el ciclo. Este contador se incrementar cada
vez que la formula determine que el nmero en proceso es Numero = Numero + 1
primo
Fin Mientras

Imprimir Cuentaprimo

Fin

Acumulador: Un acumulador es una variable que suma sobre s misma un conjunto de


valores, al finalizar con el ciclo contendr, en una sola variable, la sumatoria de todos los
valores, que cumplen una determinada condicin.
Para incluir un acumulador en un proceso se deben seguir los siguientes Ejemplo: Se requiere obtener cuantos nmeros
pasos: primos existen del 1 hasta el 100, pero adems se
requiere su sumatoria.
Inicializar antes del ciclo
Inicio
Incrementar dentro del ciclo Cuentaprimo= 0, Sumaprimo = 0
Numero = 1
Por lo general se requiere la impresin de su valor.
Leer Numero
Un acumulador se construye colocando el nombre del acumulador
= nombre del acumulador + el valor variable. Ej: Sumaprimo Mientras Nmero <= 100
Aplicar frmula primo
Se lee de la siguiente manera: A la variable Sumaprimo se le asigna el
Si es primo Entonces
valor que trae, que en su inicio es cero, ms el valor que contiene la
Cuentaprimo = Cuentaprimo + 1
variable Nmero. De esta manera Sumaprimo contiene el valor del Sumaprimo = Sumaprimo + Nmero
Fin Si
primer nmero. Cuando ocurre el encuentro del siguiente nmero primo
Imprimir Numero
y deba incrementarse el acumulador Sumaprimo, la instruccin dice que Numero = Numero + 1
Sumaprimo, es igual al valor que trae o tiene actualmente, que en esta
Fin Mientras
segunda iteracin corresponde al primer nmero primo, ms el valor del Imprimir Cuentaprimo, Sumaprimo
Fin
siguiente nmero primo encontrado, este proceso se realizar cada vez
que se encuentre un nmero primo, acumulando la sumatoria de todos
los nmeros primos hasta llegar al nmero 100.

Ing. N ahiby Castillo 19


UNIDADES TURBO PASCAL
UNIDAD SYSTEM
Contiene los procedimientos y funciones estndar de Turbo Pascal relativas a la
entrada/salida, cadenas de caracteres, calculo en coma flotante, gestin de memoria,
entre otras funciones.

UNIDAD CRT
Esta unidad proporciona un conjunto de declaraciones que permiten el acceso al control
de los modos de pantalla, de teclado, posicionamiento del cursor, entre otros.
Algunos de sus procedimientos son:
clrscr: borra la pantalla.
keypressed: detecta la pulsacin de una tecla.
Sound: hace sonar el altavoz interno
window: define una ventana de texto en la pantalla.

UNIDAD DOS
Esta unidad contiene declaraciones, constantes, tipos variables, procedimientos y
funciones relacionadas con el sistema operativo DOS y la gestin de archivos.
Algunos de sus procedimientos son:
gettime: proporciona la hora a travs del reloj interno
getdate: proporciona fecha registrada en el ordenador.
Disksize: proporciona el tamao de la unidad de almacenamiento sealada.

UNIDAD PRINTER
Esta unidad facilita la tarea del programador cuando utiliza la impresora como dispositivo
de salida. Permite enviar la salida estndar de Pascal a la impresora utilizando para ello
los procedimientos write y writeln.

LA DECLARACIN USES
Para declarar una unidad, o lo que es lo mismo, dejarla lista para ser utilizada, se utiliza la
palabra reservada USES que debe ir inmediatamente despus de la sentencia
PROGRAM, despus se escriben los nombres de las unidades que se utilizarn.

Ing. N ahiby Castillo 20


Reglas sintcticas
El punto y coma ( ; ) y el punto ( . ) son DELIMITADORES en PASCAL.
El punto y coma separa sentencias consecutivas. Tambin se usa para terminar el
encabezamiento del programa y las declaraciones de los datos. No es necesario
escribir punto y coma despus de la palabra BEGIN ni antes de la palabra END porque
BEGIN y END no son sentencias.
El punto indica el final del programa.

Las palabras BEGIN y END tambin son delimitadores, no son sentencias. Se usan
para separar las partes funcionales de un programa. Con ellas se indica el principio y el
final de la seccin ejecutable. Tambin sirven para delimitar una sentencia compuesta.
Cada BEGIN debe estar asociado con un END, excepto en dos casos: la sentencia
CASE y la declaracin de RECORD.

El PASCAL permite formato libre en la escritura del texto que compone el programa. Se
pueden colocar las sentencias en cualquier lugar de una lnea, escribir una sentencia
en ms de una lnea y colocar varias sentencias en una misma lnea. Pero no se puede
dividir un nombre y un nmero entre varias lneas o con un espacio en blanco.

Un programa puede contener comentarios en cualquier lugar. Los comentarios se


delimitan encerrndolos entre llaves ( { } ). Tambin es posible comenzar un
comentario con " ( * " y acabarlo con " * ) ".

El comando readln: carga un valor en una variable y salta una lnea. El comando
writeln: muestra informacin por pantalla y salta una lnea. Si no se escribe (ln) no
saltar la lnea

Para dejar una lnea en blanco: writeln, o readln.

El readkey sirve para que la pantalla muestre el resultado del programa hasta que el
usuario presione una tecla.

Ing. N ahiby Castillo 21

Das könnte Ihnen auch gefallen