Professional Documents
Culture Documents
Turbo pascal
Integrantes:
Materia:
Programacin.
Yorley Yanayaco
Andrea Manuitt
Juan Raymond
TIPO DE
PARMETRO
FUNCION
TIPO DE
RESULTAD
O
Entero o real
Abs(x)
Entero o real
*Arctan(x)
Calcula arcotangente de x
Entero o real
Real
* Cos(x)
Calcula coseno de x
Entero o real
Real
Exp(x)
Calcula exponencial de x ( ex )
Entero o real
Real
Frac(x)
Real
Real
Int(x)
Real
Real
Ln(x)
Entero o real
Real
Pi
Real
Real
Entero o Real
Entero
prximo.
Roun(-x) = Round(x)
* Sin(x)
Calcula seno de x
Entero o Real
Real
Sqr(x)
Calcula cuadrado de x
Entero o Real
Entero o Real
Sqrt(x)
Entero o Real
Real
Trunc(x)
Real
Entero
Log10(x)
Logaritmo base 10
Entero o Real
Real
Mod
Entero o Real
Entero o Real
NOTA1: las funciones marcadas con un * significa que el argumento es siempre en radianes.
NOTA2: la expresin XY se escribe en Turbo Pascal de la siguiente manera:
Exp(Y*Ln(x)
Encabezamiento
LABEL
declaracin de etiquetas
CONST
definicin de constantes
Seccin de declaraciones y
TYPE
definiciones
VAR
FUNCTION
Seccin de subprogramas
de los subprogramas
BEGIN
Sentencias
o
instrucciones
END.
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.
(LABEL)
CONSTANTES
(CONST) TIPOS
(TYPE) VARIABLES
(VAR)
PROCEDIMIENTOS
(PROCEDURE)
FUNCIONES
(FUNCTION)
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.
nombre = valor;
nombre1, nombre2, . nombren = valor;
Dnde:
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
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;
Donde:
Ejemplos:
VAR
EDAD: INTEGER;
SALARIO: REAL;
NOMB: STRING[30];
LETRA: CHAR;
NACIONALIDAD:
CHAR; CONDICION:
BOOLEAN;
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
A
Valor asignado
=
6
=
DEFINITIVO
= dd/mm/aa
FE
CH
A
D
LA
R
=212
0
=VENEZUELA
P
A
Explicacin o anlisis
Valor asignado
SUELDO
=6*
2
ED
AD
Explicacin o anlisis
=A+B
=AOACTUAL - ANONAC
=DIASTRAB*SDIARIO
Expresiones Aritmticas
Son utilizadas para construir frmulas 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
Operadore
s
+
-
Significado
Sumar
Restar
Ejemplo
SI A=10 y
A
Interpretacin
Resultado es: 23
-
*
*
/
Multiplicar
Exponenciacin
Divisin
A
A
A
1
100.000.000.000.0
0,
4+10
23*2div5
14
46div5
3+5*(10-(2+4))
3+5*(10-6)
(9+3)*5div4mod7+1
3+5*4 3+20
12*5div4mod7+1
23
60div4mod7+1
15mod7+1
1+1
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
Operadore
s
>
<
>
<
=
<
Significado
Mayor que
Menor que
Mayor igual
Menor igual
Igual
Diferente
Ejemplo
A
A
A
A
A
A
Interpretacin
Resultado:
VERDADERO
FAL
VERDADERO
FAL
VERDADERO
Orden de Evaluacin
Al incluir estos operadores con los operadores aritmticos, obtenemos este nuevo orden de
evaluacin:
Priorida
1
2
3
4
Operador
Contenido de parntesis ()
*,/,div,mod
+,=, <, >, <=, >=, distinto a
Acum
ulador: 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.
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:
Reglas sintcticas
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.
Recursividad
Se dice que una funcin matemtica es recursiva o recurrente cuando hay que definirla
para una serie de valores elementales y el resto de sus valores se puede obtener a partir de
los valores elementales. Por ejemplo, la funcin FACTORIAL de un nmero entero N, que se
denota N!, se adapta la definicin de funcin recursiva: se define para los valores elementales 0 y
1:0! = 11! = 1y, para el resto de los valores se puede obtener utilizando estos:2! = 2 * 1!3! = 3 *
2!4! = 4 * 3!................. N! = N * (N-1)! Hay funciones matemticas que no admiten un
mtodo de obtencin recursivo; las hay que admiten tanto un mtodo recursivo como
un mtodo no recursivo (iterativo), y las hay que slo admiten un mtodo recursivo.
8.2. RECURSIVIDAD EN TURBO PASCAL
Las funciones recursivas pueden codificarse en Turbo Pascal as como en otros
lenguajes de programacin; an ms, la idea de la recursividad puede aplicarse tambin a
procedimientos. Un subprograma (procedimiento o funcin) Pascal es recursivo cuando
tiene la capacidad de llamarse a s mismo. Pinsese que si un subprograma recursivo no
se disea bien, podemos caer en anidamientos sucesivos del subprograma y no salir
nunca de l. Para evitar esto, al escribir un subprograma recursivo en Turbo Pascal, debemos
asegurarnos de dos cosas:
1.) Que contiene una condicin de salida que garantice el fin de los anidamientos.
2.) Que en cada llamada al subprograma recursivo, se 'est ms cerca' de la condicin de salida
Ejemplo: Construir una funcin recursiva que obtenga el factorial de cualquier nmero entero:
FUNCTION
FACTORIAL (N:INTEGER) : REAL;
BEGINIF
N<=1
THEN
FACTORIAL:= 1 {Condicin de Salida}
ELSE
FACTORIAL:= N * FACTORIAL (N-1); {Cada llamada a la funcin}
END
Ntese la gran novedad con respecto a los subprogramas no recursivos: en la zona de
instrucciones del subprograma aparece una autollamada, en la que el dato (o datos) que se transfiere
al parmetro (o parmetros) vara, en cada ejecucin, en el sentido de aproximacin a
la condicin de salida, la cual viene controlada por un valor o valores concretos del
parmetro (o par-metros).Veamos qu sucede en la memoria cuando se utiliza la tcnica de la
recursin, examinando una ejecucin concreta de la funcin anterior. Supongamos que se
ejecuta FACTORIAL (3). En el momento de la llamada a la funcin, se toma
una porcin de memoria para la variable local N (2 bytes por ser de tipo INTEGER),
TO
N
DO
F:=F*I;FACTORIAL:=F;
end
Colas
Una cola es una estructura de datos similar a una lista con restricciones
Especiales. Los elementos son agregados en la parte posterior de la cola y son
Eliminados por el frente.
Construccin de colas
Implementar colas involucra el uso clases similares a una lista. Las
operaciones sobre esta estructura son idnticas: insertar y eliminar, con las
consideraciones pertinentes.
Insertar
Insertar un dato en una cola es muy similar a hacerlo en una pila o una
lista, la diferencia es que tendremos que hacerlo por el final de la cola. A
este proceso se le llama encolar.
Eliminar
Para extraer un dato de la cola, es necesario modificar el valor del nodo
primero, de manera que deje de apuntar al primer elemento de la cola. De la
misma manera que con las pilas, se extrae el valor antes de que se pierda. Se hace que el nodo
primero ahora apunte al nuevo elemento (anterior de la cola).
LISTAS
Son colecciones de elementos, donde cada uno de ellos, adems de almacenar informacin,
almacena la direccin del siguiente elemento. Una lista es una estructura lineal de datos. Es decir,
cada uno de sus componentes y un predecesor nicos, con excepcin del ltimo y del primero.
Las listas pueden implementarse mediante arreglos, resultando as una estructura esttica. Tambin
puede ser una memoria dinmica (La cantidad de memoria ocupada puede modificarse durante la
ejecucin del programa). Una lista enlazada o encadenada es una coleccin de elementos nodos,
en donde cada uno contiene datos y un enlace o liga.
Las listas enlazadas pueden ser implementadas en muchos lenguajes. Lenguajes tales
como Lisp y Scheme tiene estructuras de datos ya construidas, junto con operaciones para acceder a
las listas enlazadas. Lenguajes imperativos u orientados a objetos tales como C o C++ y Java,
respectivamente, disponen de referencias para crear listas enlazadas.
Una lista es una estructura de datos secuencial.
Lista densa: la propia estructura determina cul es el siguiente elemento de la lista. Ejemplo: un
array.
Lista enlazada: la posicin del siguiente elemento de la estructura la determina el elemento actual.
Una lista es una secuencia de elementos llamados nodos. Cada nodo esta formado por un campo de
datos y 1 o ms campos de enlace que apunta(n) al siguiente nodo. Todo nodo tiene un predecesor y
antecesor excepto el primero y el ltimo.
La lectura de una lista se realiza secuencialmente pero su posicin fsica en memoria solo depende
del mtodo para implementarla. Si por ejemplo usamos punteros que es la tcnica ms adecuada
podemos almacenar los componentes de la lista en posiciones dispersas de memoria, aunque ante el
usuario continuara apareciendo como una estructura secuencial.
Se llaman operaciones simples las que afectan a un solo dato y complejas las que afectan a varios.
Las operaciones complejas pueden realizarse repitiendo las simples.
Es necesario almacenar al menos la posicin de memoria del primer elemento.
Adems es dinmica, es decir, su tamao cambia durante la ejecucin del programa. Una lista
enlazada se puede definir recursivamente de la siguiente manera:
a)
b)
c)
Una lista puede cambiar de tamao, pero su ventaja fundamental es que son flexibles a la hora de
reorganizar sus elementos; a cambio se ha de pagar una mayor lentitud a la hora de acceder a
cualquier elemento.
rboles
Recursin
Alguna vez hemos visto ese conjunto de muecos de madera de origen ruso
(matrioshkas) en la que uno se encuentra dentro de otro. Dentro del primer
GRAFOS
Un grafo es un conjunto de puntos (vrtices) en el espacio, que estn conectados por un conjunto de
lneas (aristas).
Los grafos son estructuras de datos dinmicas no lineales, utilizadas comnmente en el anlisis de
redes, en diseo de circuitos elctricos, en estrategias de mercados, cartografa, mapas conceptuales,
matemticas, planificacin de procesos y muchas rea del conocimiento.
Aristas
Son las lneas con las que se unen las aristas de un grafo y con la que se construyen tambin
caminos. Si la arista carece de direccin se denota indistintamente {a, b} o {b, a}, siendo a y b
los vrtices que une.
Si {a ,b} es una arista, a los vrtices a y b se les llama sus extremos.
Aristas Adyacentes: Se dice que dos aristas son adyacentes si convergen en el mismo vrtice.
Aristas Paralelas: Se dice que dos aristas son paralelas si vrtice inicial y el final son el mismo.
Aristas Cclicas: Arista que parte de un vrtice para entrar en el mismo.
Cruce: Son dos aristas que cruzan en un punto.
Vrtices
Son los puntos o nodos con los que esta conformado un grafo. Llamaremos grado de un vrtice al
nmero de aristas de las que es extremo. Se dice que un vrtice es `par' o `impar' segn lo sea su
grado.
Vrtices Adyacentes: si tenemos un par de vrtices de un grafo (U, V) y si tenemos un arista que los
une, entonces U y V son vrtices adyacentes y se dice que U es el vrtice inicial y V el vrtice
adyacente.
Vrtice Aislado: Es un vrtice de grado cero.
Vrtice Terminal: Es un vrtice de grado 1.
SISTEMAS DE ARCHIVOS
Un sistema de archivos son los mtodos y estructuras de datos que un sistema operativo utiliza para
seguir la pista de los archivos de un disco o particin; es decir, es la manera en la que se organizan
los archivos en el disco.
El trmino tambin es utilizado para referirse a una particin o disco que se est utilizando para
almacenamiento, o el tipo del sistema de archivos que utiliza. As uno puede decir tengo dos
sistemas de archivo refirindose a que tiene dos particiones en las que almacenar archivos, o que
uno utiliza el sistema de archivos extendido, refirindose al tipo del sistema de archivos.
La diferencia entre un disco o particin y el sistema de archivos que contiene es importante. Unos
pocos programas (incluyendo, razonablemente, aquellos que crean sistemas de archivos) trabajan
directamente en los sectores crudos del disco o particin; si hay un archivo de sistema existente all
ser destruido o corrompido severamente. La mayora de programas trabajan sobre un sistema de
archivos, y por lo tanto no utilizarn una particin que no contenga uno (o que contenga uno del tipo
equivocado).
Antes de que una particin o disco sea utilizada como un sistema de archivos, necesita ser iniciada,
y las estructura de datos necesitan escribirse al disco. Este proceso se denomina construir un sistema
de archivos.
Al ser los Sistemas de Archivos, mtodos tan extensos y poli funcionales, es necesario clasificarlos,
para entender de mejor manera su manejo y funcin.
ARCHIVOS SECUENCIALES
Es la forma bsica de organizar un conjunto de registros, que forman un archivo, utilizando una
organizacin secuencial. En un archivo organizado secuencialmente, lo registros quedan grabados
consecutivamente cuando el archivo se utiliza como entrada. En la mayora de los casos, los
registros de un archivo secuencial quedan ordenados de acuerdo con el valor de algn campo de
cada registro. Semejante archivo se dice que es un archivo ordenado; el campo, o los campos, cuyo
valor se utiliza para determinar el
ordenamiento es conocido como la llave del ordenamiento. Un archivo puede ordenarse ascendente
o descendentemente con base en su llave de ordenamiento.
La forma ms comn de estructura de archivo es el archivo secuencial. En este tipo de archivo, un
formato fijo es usado para los registros. Todos los registros tienen el mismo tamao, constan del
mismo nmero de campos de tamao fijo en un orden particular. Como se conocen la longitud y la
posicin de cada campo, solamente los valores de los campos se necesitan almacenarse; el nombre
del campo y longitud de cada campo son atributos de la estructura de archivos.
ESCRITURA DE LOS ARCHIVOS SECUENCIALES:
En estos archivos, la informacin slo puede leerse y escribirse empezando desde el principio del
archivo.
Los archivos secuenciales tienen algunas caractersticas que hay que tener en cuenta:
1. La escritura de nuevos datos siempre se hace al final del archivo.
2. Para leer un dato concreto del archivo hay que avanzar siempre hasta donde se encuentre dicho
dato. Si el dato requerido se encuentra antes del dato en que est se est posicionado el archivo en
un momento dado, ser necesario regresar al comienzo del archivo y avanzar hasta el dato
necesario.
ESTRUCTURA DE LA ORGANIZACIN SECUENCIAL
En un archivo secuencial, se almacenan los registros uno tras otro. El primer registro almacenado se
coloca al principio del archivo. El segundo se almacena inmediatamente
despus (no existen posiciones sin uso), el tercero despus del segundo, etc. Este orden nunca
cambia en la organizacin secuencial.
Una caracterstica de los archivos secuenciales es que todos los registros se almacenan por posicin:
de primer registro, segundo registro etc.
Ventajas:
Los archivos secuenciales proveen la mejor utilizacin de espacio y son rpidos cuando los registros
son accesados secuencialmente.
Los archivos con poca volatilidad, gran actividad y tamao variable son altamente susceptibles de
ser organizados secuencialmente.
La ventaja ms importante de la tcnica de organizacin secuencial de archivos es la capacidad de
acceso al "siguiente" registro rpidamente: Mientras que el patrn de acceso a un archivo secuencial
se conforme al ordenamiento de registros en el archivo, los tiempos de acceso sern muy buenos.
Sin embargo, si el patrn de acceso al programa no se conforma al patrn de ordenamiento de los
registros, entonces la eficiencia del programa puede ser terrible.
Otra ventaja de los archivos de organizacin secuencial es que son muy sencillos de usar y aplicar.
Desventajas:
El acceso a un registro es pobre, la localizacin de un determinado registro no se puede hacer
individualmente no de manera rpida, y el acceso aleatorio es imprctico.
Adems, en los archivos secuenciales la direccin de registro est implcita y estn vulnerables a
fallas del sistema
ARCHIVO SECUENCIAL INDEXADO
Los registros se organizan en una secuencia basada en un campo clave presentando dos
caractersticas, un ndice del archivo para soportar los accesos aleatorios y un archivo de
desbordamiento. El ndice proporciona una capacidad de bsqueda para llagar rpidamente al
registro deseado y el archivo de desbordamiento es similar al archivo de registros usado en un
archivo secuencial, pero est integrado de forma que los archivos de desbordamiento se ubiquen
siguiendo un puntero desde su registro predecesor.
La estructura ms simple tiene como ndice un archivo secuencial simple, cada registro del archivo
ndice tiene dos campos, un campo clave igual al del archivo principal y un puntero al archivo
principal. Para encontrar un campo especifico se busca en el ndice hasta encontrar el valor mayor
de la clave que es iguale o precede al valor deseado de la clave, la bsqueda continua en el archivo
principal a partir de la posicin que indique el puntero.
Cada registro del archivo principal tiene un campo adicional que es un puntero al archivo de
desbordamiento. Cuando se inserta un nuevo registro al archivo, tambin se aade al archivo de
desbordamiento. El registro del archivo principal que precede inmediatamente al nuevo registro
segn la secuencia lgica se actualiza con un puntero del registro nuevo en el archivo de
desbordamiento, si el registro inmediatamente anterior est tambin en el archivo de
desbordamiento se actualizar el puntero en el registro.
Para procesar secuencialmente un archivo completo los registros del archivo principal se procesarn
en secuencia hasta encontrar un puntero al archivo de desbordamiento, el acceso contina en el
archivo de desbordamiento hasta que encuentra un puntero nulo, entonces renueva el acceso donde
se abandon en el archivo principal.
Las caractersticas ms relevantes de un archivo indexado, son las siguientes:
a) El diseo del registro tiene que tener un campo, o combinacin de campos, que permita
identificar cada registro de forma nica, es decir, que no pueda haber dos registros que tengan la
misma informacin en l. A este campo se le llama campo clave y es el que va a servir de ndice. Un
mismo fichero puede tener mas de un campo clave, pero al menos uno de ellos no admitir valores
duplicados y se le llama clave primaria. A las restantes se les llama claves alternativas.
b) Permiten utilizar el modo de acceso secuencial y el modo de acceso directo para leer la
informacin guardada en sus registros.
El modo de acceso directo se hace conociendo el contenido del campo clave del registro que
queremos localizar. Con esa informacin el sistema operativo puede consultar el ndice y conocer la
posicin del registro dentro del fichero.
En el modo de acceso secuencial los registros son ledos ordenados por el contenido del campo
clave, independientemente del orden en que se fueron grabando (El orden lgico no es igual al
orden fsico), debido a que el acceso a los datos se hace a travs del ndice, que para hacer ms fcil
la bsqueda de los registros permanece siempre ordenado por el campo clave.
c) Solamente se puede grabar en un soporte direccionable. Ej.: disco magntico. Si esto no fuera as
no podra emplear el acceso directo.
VENTAJAS
1. Permite el acceso secuencial.
2. Permite el acceso directo a los registros.
3. Se pueden actualizar los registros en el mismo fichero, sin necesidad de crear un fichero nuevo de
copia en el proceso de actualizacin.
DEVENTAJAS
1. Ocupa ms espacio en el disco que los ficheros secunciales, debido al uso del rea de ndices.
2. Tiene tendencia a que aumente el tiempo medio de acceso a los registros, cuando se producen
muchas altas nuevas con claves que hay que intercalar entre las existentes, ya que aumenta el rea
de overflow.
3. Solo se puede utilizar soportes direccionables.
4. Obliga a una inversin econmica mayor, por la necesidad de programas y, a veces, hardware ms
sofisticado.
Los archivos directos son muy usados donde se necesita un acceso muy rpido, donde se
usan registros de longitud fija y donde siempre se accede a los registros de una vez.
Archivos aleatorios.
Los Archivos aleatorios almacenan datos en forma de registros mediante una estructura definida de
tipo Type (estructura definida por nosotros) tambin llamada UDT.
Para declarar un archivo de acceso directo se realiza con las palabras reservadas FILE OF.
Los registros de tipo RECORD permiten grabar en un solo registro un grupo de datos que pueden
ser de diferentes tipos, uno de tipo INTEGER, uno de tipo STRING, etc. Deben ser declarados antes
de las variables en una seccin llamada TYPE.
Aun cuando se tenga declarado el archivo no es posible grabar nada en el si no se le asigna un
nombre real para guardarlo en el disco. el proceso de dicha asignacin es el mismo que para los
archivos de texto: Assign (archivo, "nombre.ext"), abrir archivos.
Cada uno de los registros de un archivo esta referenciado por un numero especifico comenzando
desde el registro 0 y aumentando de 1 en 1.
La funcin FilePos devuelve el nmero de registro actual, su sintaxis es:
-FilePos (variable Archivo)
-Seek (variable Archivo, NumResgistro)
-Seek (variable archivo, FileSize (variable Archivo).
Para la lectura y escritura de un archivo de acceso directo nicamente se utilizan los procedimientos
Read y Write. Para cerrar los archivos abiertos se procede igual que en uno de acceso secuencial,
utilizando el procedimiento close.