.: Men� :.

Made in Ecuador
:: Home :.
:: Programaci�n :.
 Introducci�n
 Soluci�n de un problema
 Objetivos de la Programaci�n
 Herramientas para Programar
 Programaci�n Estructurda
 Otras T�cnicas
:: Principiante :.
 �Que es Turbo Pascal?
 Estructura de un programa
 Declaraci�n de Variables
 Definici�n de Tipos
 Operadores
 Expresiones
 Instrucciones
 Procedimientos Entrada/Salida
 Mi primer Programa
 Ejercicios Propuestos
:: Medio :.
:: Estructuras de Control :.
   :: Selecci�n :.
 If...Then...Else
 Case...of...Else
   :: Bucles :.
 While...Do
 Repeat...Until
 For...to...Do
:: Tipos Estructurados :.
 Cadenas
 Vectores
 Matrices
 Registros
 Ejercicios Propuestos
:: Avanzado :.
 Archivos
 Punteros
 Modo Grafico
 Modo Print
 Ejercicios Propuestos
:: Experto :.
 Librerias
 Compiladores
 Manejo de Puertos LPT
 Base de Datos en Codigo
 Ejercicios Propuestos
:: Varios :.
 Codigo Fuente
 Resultado Ejercicios Propuestos
 Autor Pagina Web

Enviame un e-mail


Librerias o Unidades

ESTRUCTURA DE UNA UNIDAD � Una unidad esta constituida por las siguientes secciones: � Cabecera de la unidad � Secci�n �Interface� (o secci�n p�blica) � Secci�n �implementati�n� (o secci�n privada) � Secci�n de inicializaci�n UNIT INTERFACE USES ; {opcional} {declaraciones p�blicas de objetos exportables} IMPLEMENTATION {declaraciones privadas} {definici�n de procedimientos y funciones p�blicas} BEGIN {c�digo de inicializaci�n} {opcional} END. CABECERA DE LA UNIDAD � Comienza con la palabra reservada UNIT seguido del identificador y finalizado con un punto y coma. � Un identificador v�lido est� formado por una cadena de 1 a 8 caracteres. � El nombre de la unidad puede ser arbitrario pero debe coincidir con el nombre del fichero que lo contiene. � Ejemplo: � La �UNIT test� debe almacenarse en un fichero denominado test.pas. Una vez compilado, la extensi�n del fichero ser� TPU (turbo pascal unit). SECCI�N INTERFACE � Esta parte es la que permite conectar esta unidad con otras unidades y programas. � Tambi�n es conocida como la secci�n p�blica ya que los objetos declarados en esta secci�n son exportables al exterior. � En esta secci�n se pueden declarar constantes, tipos de datos, variables*, funciones y procedimientos. � En esta secci�n s�lo se declara la cabecera de las funciones y procedimientos. Su implementaci�n se encuentra en la secci�n �implementation�. EJEMPLO DE DECLARACI�N DE SECCI�N INTERFACE UNIT rayo; INTERFACE USES Dos, Graph, Crt; VAR a,b,c:integer; FUNCTION Exponencial (a,b:integer):real; PROCEDURE Dividir(x,y:integer; var cociente:integer); OJO!. Las variables declaradas en esta secci�n son en realidad variables globales, ya que son visibles desde otras unidades y programas. SECCI�N IMPLEMENTATION � Esta secci�n es estrictamente privada y por tanto su contenido no es exportable. � Esta secci�n contiene los cuerpos de los procedimientos y funciones declarados en la secci�n �interface�. � Las variables declaradas dentro de esta secci�n ser�n de uso exclusivo para los procedimientos y funciones de dicha unidad. EJEMPLO DE DECLARACI�N DE SECCI�N IMPLEMENTATION IMPLEMENTATION FUNCTION Exponencial (a,b:integer):real; VAR p,i:integer; BEGIN p:=1; for p:=1 to b do p:=p*a; exponencial:=p; END; {exponencial} PROCEDURE Dividir(x,y:integer; var cociente:integer); BEGIN cociente:=x DIV y; END; {Dividir} SECCI�N DE INICIALIZACI�N � Esta secci�n opcional puede contener, por ejemplo, instrucciones que sirvan para iniciar variables. � La ejecuci�n de estas instrucciones se efect�a antes de ejecutar la primera instrucci�n del programa que usa dicha unidad. � En esta secci�n tambi�n se pueden inicializar cualquier estructura de datos que emplee la unidad. CREACI�N DE UNIDADES � Una vez que se dispone del c�digo fuente la unidad se compila de la misma forma que un programa. � El archivo obtenido posee la extensi�n TPU y es un fichero no ejecutable. � Para poder utilizar una unidad se debe declarar su uso en la secci�n USES � Ejemplo: Program Prueba; USES Utilidad; CREACI�N DE UNIDADES UNIT utili; INTERFACE USES Crt, Dos; PROCEDURE Frase (texto:string); PROCEDURE Pausa; IMPLEMENTATION USES Printer; PROCEDURE Frase; BEGIN Clrscr; GotoXY((80-length(texto)) DIV 2,10); writeln(texto); END; {Frase} PROCEDURE Pausa; BEGIN repeat until Keypressed END; {Pausa} END. USO DE LA ANTERIOR UNIDAD PROGRAM usoutili; USES utili, crt; VAR text:string; BEGIN clrscr; writeln(�Introduce un texto�); readln(text); frase(text); pausa END. {usoutili} USO CIRCULAR DE UNIDADES � A partir de la versi�n 5.0 se puede hacer uso de unidades mutuamente dependientes (que se invocan entre ellas). � En ambos casos dicha referencia debe realizarse en la secci�n de �implementation�. � Para compilar estas unidades se debe utilizar la orden MAKE del men� del compilador. Para ello se compila una de las dos unidades quedando la otra autom�ticamente compilada. UNIT Visualiz; INTERFACE PROCEDURE EscribirenposicionXY(x,y:integer;men:string); IMPLEMENTATION USES Crt, Error; PROCEDURE EscribirenposicionXY(x,y:integer;men:string); BEGIN if (x in [1..80]) AND (y in [1..25]) then BEGIN GotoXY(x,y); writeln(men) END else Vererror(�coordendas xy fuera de rango�) END; {Escribirenposicionxy} END. {Visualiz} UNIT Error; INTERFACE PROCEDURE Vererror(cadena:string); IMPLEMENTATION USES Visualiz; PROCEDURE Vererror(cadena:string); BEGIN EscribirenposicionXY(1,25,cadena) END; {Vererror} END. {Error} USO DE LAS DOS ANTERIORES UNIDADES � Programa que escribe un texto en pantalla, dando un mensaje de error si las coordenadas del texto son incorrectas. PROGRAM circular; USES crt, visualiz; BEGIN clrscr; EscribirenposicionXY(1,1, �test�); EscribirenposicionXY(90,90, �fuera de la pantalla�); EscribirenposicionXY(10,20, �retorno a la pantalla�); END. UNIDADES ESTANDAR � Estas unidades se sit�an en un fichero denominado turbo.tpl y se cargan en memoria autom�ticamente junto con el entorno. � SYSTEM � CRT � DOS � PRINTER UNIDAD SYSTEM � Contiene los procedimientos y funciones est�ndar de TP relativas a la entrada/salida,cadenas de caracteres, calculo en coma flotante, gesti�n de memoria,.... � Esta unidad no necesita ser referenciada ya que se carga autom�ticamente en la compilaci�n de cada programa. 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,.. � Algunos de sus procedimientos son: � clrscr: borra la pantalla. � keypressed: detecta la pulsaci�n 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 gesti�n de archivos. � Algunos de sus procedimientos son: � gettime: proporciona la hora a trav�s del reloj interno � getdate: proporciona fecha registrada en el ordenador. � Disksize: proporciona el tama�o de la unidad de almacenamiento se�alada. UNIDAD PRINTER � Esta unidad facilita la tarea del programador cuando utiliza la impresora como dispositivo de salida. � Permite enviar la salida est�ndar de Pascal a la impresora utilizando para ello los procedimientos �write� y �writeln.� UNIDAD PRINTER, EJEMPLO PROGRAM impresora. USES printer; VAR a,b,c:integer; BEGIN writeln(lst, �este texto aparece en la impresora�); read(a,b); c:=a+b; writeln(lst,c:6); END. {impresora} UBICACI�N DE LAS UNIDADES � El sistema espera encontrar las unidades que dise�a el programador en el directorio activo de la unidad de disco activa. IDENTIFICADORES ID�NTICOS EN DIFERENTES UNIDADES � Turbo Pascal permite el uso del mismo identificador en diferentes unidades. � Turbo Pascal siempre utiliza el identificador de la �ltima unidad explorada � Una forma de poder distinguir entre distintos identificadores es emplear el identificador de la unidad, seguido de un punto y del identificador del procedimiento. RESUMEN UNIT ; {cabecera obligatoria} {El identificador debe ser utilizado como nombre de archivo} INTERFACE USES ; {opcional} CONST..... TYPE...... VAR...... PROCEDURE....... {s�lo cabecera} FUNCTION........... {s�lo cabecera} IMPLEMENTATION {Declaraciones privadas: locales a la unidad} USES ; {opcional} CONST..... TYPE...... VAR...... PROCEDURE....... {cabecera y cuerpo} FUNCTION........... {cabecera y cuerpo} BEGIN {Selecci�n de inicializaci�n: opcional} ............................... END. {Obligatorio, fin de implementaci�n} EJEMPLO PROGRAM Hora; USES Crt, Dos; VAR Horas, Minutos, Segundos, Centesimas:word; BEGIN Clrscr; while not Keypressed do begin GotoXY(64,1); GetTime(horas,minutos,segundos,centesimas); writeln(horas:2,minutos:2,segundos:2,centesimas:2); end {while} END. {Hora}

CopyRight© 2003/2004, Diego Castillo. Todos los Derechos Reservados
Catamayo - Loja - Ecuador | Resoluci�n Minima 800x600
Estadisticas

Hosted by www.Geocities.ws

1