pe 04 - estructuras de almacenamiento externo

Post on 26-Jan-2016

217 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

estructuras de almacenamiento

TRANSCRIPT

1

Estructuras de datos externas

Programación EstructuradaIrma Yazmín Hernández Báez

Universidad Politécnica del Estado de Morelos

Contenido

• Introducción.

• Organización de archivos.• Archivos secuenciales.• Archivos directos y

aleatorios (hashing).• Archivos indexados.

• Manejando archivos en C.

• Implementando archivos en C.

2 PE - Estructuras de datos externas

Universidad Politécnica del Estado de Morelos

Introducción a Archivos• Archivos: registros y campos.• Registros físicos y registros lógicos.• Operaciones con archivos.

3

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Archivos: registros y campos• Es posible almacenar datos en

memoria secundaria.• Más lenta pero dispone de más

espacio de almacenamiento, además no es volátil.

• Archivo: conjunto de información relacionada entre sí y estructurada en unidades más pequeñas, llamada registros.

• Registro: cada una de las unidades individuales en las que se divide un archivo. Cada registro debe contener datos pertenecientes a una misma cosa. Cada registro es una estructura de datos que contiene campos.

• Campo: es cada uno de los elementos que constituyen un registro.

4

                                     C    A    M    P    O    S

R          ID              Nombre          Apellidos        Teléfono    E  +-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+G  |  111-­‐H  |  Salvador    |  Pérez  Pérez    |  2309201  |I  +-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+S  |  333-­‐J  |  Margarita  |  Sánchez  Flor  |  2232111  |T  +-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+R  |    ....  |        ....      |          .....        |      ....    |O  +-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐+S

Ejemplo:

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Registros físicos y registros lógicos

• Un registro físico (bloque) es la cantidad de información que el sistema operativo puede enviar o recibir del soporte de memoria secundaria en una operación de lectura o escritura. Esta cantidad depende del hardware.

• El registro físico puede ser mayor que el registro lógico, con lo cual, en una sola operación de lectura o escritura, se podrían transferir varios registros lógicos. También puede ocurrir lo contrario.

• Factor de bloqueo: número de registros lógicos contenidos en un registro físico.

• Importancia del rendimiento.5

Campo  ID  (5  caracteres)                  =    5  bytesCampo  Nombre  (30  caracteres)        =  30  bytesCampo  Apellidos  (40  caracteres)  =  40  bytesCampo  Teléfono  (entero  largo)      =    8  bytesTOTAL    =  83  bytes

Tamaño  registro  físico  =  512  bytes

Factor  de  bloqueo  =  TRF/TRL  =  512/83  =  6

Cálculo del Factor de bloqueo:

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Inserción: Consiste añadir un registro al archivo. El registro puede añadirse al final del archivo o entre dos registros que ya existieran previamente.

Inserción: Consiste añadir un registro al archivo. El registro puede añadirse al final del archivo o entre dos registros que ya existieran previamente.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Borrado: Consiste en eliminar un registro existente.Borrado: Consiste en eliminar un registro existente.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Modificación: Consiste en cambiar el dato almacenado en uno o varios de los campos del registro.

Modificación: Consiste en cambiar el dato almacenado en uno o varios de los campos del registro.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Consulta: Consiste en leer el dato almacenado en uno o varios de los campos del registro.

Consulta: Consiste en leer el dato almacenado en uno o varios de los campos del registro.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Creación: Consiste en crear una entrada en el soporte de memoria secundaria y asignarle un nombre para identificar en el futuro a los datos que contiene.

Creación: Consiste en crear una entrada en el soporte de memoria secundaria y asignarle un nombre para identificar en el futuro a los datos que contiene.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Apertura: Antes de trabajar con un archivo es necesario abrirlo, creándose así un canal de comunicación entre el programa y el archivo a través del cuál se pueden leer y escribir datos. Los archivos sólo deben permanecer abiertos el tiempo estrictamente necesario.

Apertura: Antes de trabajar con un archivo es necesario abrirlo, creándose así un canal de comunicación entre el programa y el archivo a través del cuál se pueden leer y escribir datos. Los archivos sólo deben permanecer abiertos el tiempo estrictamente necesario.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Cierre: Es importante cerrar el canal de comunicación con el archivo cuando no va a usarse en un futuro inmediato, porque todos los sistemas limitan el número máximo de archivos que pueden estar abiertos simultáneamente. También es importante porque evita un acceso accidental al archivo que pueda deteriorar la información almacenada en él.

Cierre: Es importante cerrar el canal de comunicación con el archivo cuando no va a usarse en un futuro inmediato, porque todos los sistemas limitan el número máximo de archivos que pueden estar abiertos simultáneamente. También es importante porque evita un acceso accidental al archivo que pueda deteriorar la información almacenada en él.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Ordenación: Permite establecer un orden entre los registros del archivo.Ordenación: Permite establecer un orden entre los registros del archivo.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Copiado: Crea un nuevo archivo con la misma estructura y contenido que el archivo original.Copiado: Crea un nuevo archivo con la misma estructura y contenido que el archivo original.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Concatenación: Consiste en crear un archivo nuevo que contenga los registros de otros dos archivos previamente existentes, de manera que primero aparezcan todos los registros de un archivo y, a continuación, todos los del otro.

Concatenación: Consiste en crear un archivo nuevo que contenga los registros de otros dos archivos previamente existentes, de manera que primero aparezcan todos los registros de un archivo y, a continuación, todos los del otro.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Mezcla: Parecida a la concatenación, pero el archivo resultante contendrá todos los registros de los dos archivos originales mezclados y ordenados.

Mezcla: Parecida a la concatenación, pero el archivo resultante contendrá todos los registros de los dos archivos originales mezclados y ordenados.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Compactación: Esta operación sólo se realiza sobre archivos en los cuales el borrado de registros se ha realizado sin eliminar físicamente el registro, sino únicamente marcándolo como borrado para no procesarlo. Después de la compactación, todos los registros marcados como borrados quedan borrados físicamente, con lo que se libera espacio en el dispositivo de almacenamiento.

Compactación: Esta operación sólo se realiza sobre archivos en los cuales el borrado de registros se ha realizado sin eliminar físicamente el registro, sino únicamente marcándolo como borrado para no procesarlo. Después de la compactación, todos los registros marcados como borrados quedan borrados físicamente, con lo que se libera espacio en el dispositivo de almacenamiento.

Universidad Politécnica del Estado de Morelos

Operaciones con archivos• Sobre registros individuales:

• Inserción.• Borrado.• Modificación• Consulta.

• Sobre el archivo completo:• Creación.• Apertura.• Cierre.• Ordenación.• Copiado.• Concatenación.• Mezcla.• Compactación.• Borrado6

Borrado: Es la operación contraria a la creación, ya que elimina la entrada en el dispositivo de almacenamiento, con lo que se pierde toda la información almacenada en el archivo.

Borrado: Es la operación contraria a la creación, ya que elimina la entrada en el dispositivo de almacenamiento, con lo que se pierde toda la información almacenada en el archivo.

Universidad Politécnica del Estado de Morelos

Organización interna de archivos• Archivos secuenciales.• Archivos directos y aleatorios (Hashing).• Archivos indexados.

7

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

8

Archivos secuenciales

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Tipos de organización

• La organización de los archivos es la forma en que los datos son estructurados y almacenados en el dispositivo secundario.

• El tipo de organización se establece durante la fase de creación del archivo y es invariable durante toda su vida.

• La organización puede ser secuencial o relativa (o una combinación de ambas).

• El tipo de acceso al archivo es el procedimiento que se sigue para situarse sobre un registro concreto para hacer alguna operación sobre él.

• El tipo de acceso está condicionado por el tipo de org. física del archivo.

9

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Archivos secuenciales

• La forma más simple de estructura de archivo es el archivo secuencial.

• Los registros se sitúan físicamente en el dispositivo en el orden en el que se van escribiendo, uno tras otro y sin dejar huecos entres sí.

• El acceso a los registros también debe hacerse en orden.

• Archivos sencuenciales -> cinta magnética.

• Tienen un indicador de posición (o cursor) que señala qué registro fue el último que se accedió. Al abrir el archivo, el indicador se sitúa al inicio.

• Cuando se abre para escribir en él, el indicador se sitúa justo después del último byte del mismo (al final).

10

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Archivos secuenciales: ventajas y desventajas

11

Ventajas:• Es la más sencilla de manejar para

el programador.• Si hay que acceder a un conjunto

de registros consecutivos, o a todo el archivo es el método más rápido.

• No deja espacios entre registro y registro, por lo que se optimiza el uso del espacio en la memoria secundaria.

Desventajas:• Para consultar datos individuales,

hay que recorrer todo el archivo desde el principio. Es decir, el acceso a registros individuales es, en general, lento.

• Las operaciones de inserción y eliminación de registros solo pueden hacerse al final del archivo.

• Hacerlas con registros intermedios representa mover grandes bloques de información y, por lo tanto, consumir mucho tiempo.

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

12

Archivos directos y aleatorios

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Organización relativa: archivos directos y aleatorios

• La idea básica de la organización relativa consiste en guardar físicamente los registros en lugares de memoria no consecutivos.

• ¿Cómo se puede encontrar dónde está cada registro?.

• Solución: utilizar un campo clave de entre todos los del registro. Suele ser numérico, permite averiguar la dirección física donde está almacenado el registro en la memoria secundaria mediante un algoritmo de transformación.

13

Hashing. Es la transformación de claves lógicas para obtener direcciones de físicas.

• Los archivos relativos son más versátiles que los secuenciales porque permiten acceder a cualquier parte del archivo en cualquier momento, como si fueran arreglos. Las operaciones de lectura y escritura pueden hacerse en cualquier punto del archivo.

• Los archivos de organización relativa tienen dos variantes: los archivos directos y los archivos aleatorios (o indirectos).

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

• Suponga que un archivo almacenado en memoria secundaria contiene cinco registros. En un archivo secuencial los cinco estarán almacenados en posiciones consecutivas de memoria.

• En cambio, si el archivo es relativo, cada registro estará almacenado en posiciones no consecutivas.

• ¿Cómo localizar los registros en la memoria secundaria? -> R: Hashing (función de transformación a cada clave).

14

Hashing. Es la transformación de claves lógicas para obtener direcciones de físicas.

Ejemplo de hashing

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

15

Archivos indexados

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Manejando archivos en C• Funciones de apertura y cierre.• Funciones de lectura y escritura.• Funciones específicas para acceso

directo.• Manipulación de archivos y directorios.

16

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Apertura de archivos

• Antes de escribir o leer datos de un archivo es necesario abrirlo.

• Al abrir el archivo se establece comunicación entre el programa y el sistema operativo a cerca de cómo accesarlo.

• Programa: nombre completo del archivo y la intención de uso.

• SO: alias del archivo.

17

Programa de

archivos

Nombre de archivo

Lectura/EscrituraSistema

OperativoApuntador a

estruct. de archivo (alias)

Las operaciones en archivos se

realizan por medio de su alias Archivo

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Manejo básico de archivos con stdio.h

• Biblioteca STDIO -> funciones básicas de archivos: leer y escribir datos.

• Primer paso: abrir el archivo.• Devolución de un puntero a

una estructura de tipo FILE (descriptor de archivo). Permite manipular posteriormente el archivo.

• Segundo paso: manipulación del archivo.

• Último paso: cerrar el archivo.

18

Ejemplo:

/*  variable  para  apuntar  al        descriptor  de  archivo  */FILE*  fd;      ...  /*  abre  el  archivo  en  modo        lectura  */fd  =  fopen  ("pepe.txt",  "rt");  ...  trabaja  con  el  archivo  ...  /*  cierra  el  archivo  */fclose  (fd);

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

19

Funciones de manejo de archivos

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Abrir y cerrar un archivo• Abrir un archivo

fd  =  fopen  (nombre,  modo);

• Devuelve NULL si no se pudo abrir.

• nombre es el nombre del archivo.

• modo es una cadena que define el modo de apertura.

modo descripción

r solo lectura.w escritura.a apéndice (escribir desde el final).+ (combinado con r, w o a) lectura/escritura.t archivo de texto.b archivo binario.

20

Universidad Politécnica del Estado de Morelos

Abrir un archivo:

fd = fopen ("c:\\ejemplos\\ archivo.txt","r+t");

Cerrar un archivo:

fclose  (fd);

Abre el archivo:c:\ejemplos\archivo.txt en modo lectura/escritura y en modo texto.Las barras en el nombre del archivo deben escribirse doble.

PE - Estructuras de datos externas

Validar la apertura de un archivo

• Algunas funciones requieren la existencia del archivo para realizar operaciones.

• Por ello es necesario verificar que cuando se intenta abrir un archivo hay tenido éxito la operación.

• Si un archivo no se puede abrir, la función fopen devuelve el valor de 0 (cero), definido como NULL en stdio.h.

21

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

int main () {

!alias = fopen("ejem.sec", "rb");!if (alias==NULL) {!! printf("No se puede abrir el _ archivo!");!! getch();!}

return 0;}

PE - Estructuras de datos externas

Detectar el final del archivo feof()• Sintaxis de fputs

x  =  feof  (fd);

• Devuelve un 1 si se ha llegado al final del archivo.

• Devuelve un 0 en caso contrario.

• Útil para saber cuándo dejar de leer información.

22

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

PE - Estructuras de datos externas

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

PE - Estructuras de datos externas

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

PE - Estructuras de datos externas

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable que se desea grabar (reg) Notar el &.

PE - Estructuras de datos externas

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable que se desea grabar (reg) Notar el &.

La función sizeof determina el tamaño en bytes del registro.

PE - Estructuras de datos externas

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable que se desea grabar (reg) Notar el &.

Cantidad de registros que se desean grabar

La función sizeof determina el tamaño en bytes del registro.

PE - Estructuras de datos externas

Escritura de registros usando fwrite()• La función fwrite proporciona el

mecanismo para almacenar todos los campos de un registro en un archivo.

• Al utilizar esta función, se almacena la variable (de tipo struct) que representa un bloque de datos o campos (no se almacena campo por campo).

• Sintaxis:

23

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "wb");

! fwrite(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fwrite  (void*  ptr_mem,                        int      tam_bytes,                        int      num,                        FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable que se desea grabar (reg) Notar el &.

Cantidad de registros que se desean grabar

La función sizeof determina el tamaño en bytes del registro.

alias del archivo donde se desea grabar.

PE - Estructuras de datos externas

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

PE - Estructuras de datos externas

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

PE - Estructuras de datos externas

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

PE - Estructuras de datos externas

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable se recupera el registro (reg) Notar el &.

PE - Estructuras de datos externas

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable se recupera el registro (reg) Notar el &.

La función sizeof determina el tamaño en bytes del registro.

PE - Estructuras de datos externas

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable se recupera el registro (reg) Notar el &.

Cantidad de registros que se desean leer.

La función sizeof determina el tamaño en bytes del registro.

PE - Estructuras de datos externas

Lectura de registros usando fread()• La función fread permite “cargar”

todos los campos de un registro en un archivo.

• Lee un registro y lo copia en la memoria RAM.

• Sintaxis:

24

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fread(&Reg,sizeof(Reg),1,alias);! return 0;}

int  fread  (void*  ptr_mem,                      int      tam_bytes,                      int      num,                      FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

Variable se recupera el registro (reg) Notar el &.

Cantidad de registros que se desean leer.

La función sizeof determina el tamaño en bytes del registro.

alias del archivo de donde se desea leer.

PE - Estructuras de datos externas

Implementando archivos en C• Archivos secuenciales.• Archivos directos.• Archivos indexados.

25

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

26

Implementación de archivos secuenciales

Universidad Politécnica del Estado de Morelos

OPERACIONES:• Altas.• Consultas.• Listado.• Modificaciones.• Bajas lógicas.• Bajas físicas.PE - Estructuras de datos externas

Declaraciones globales• Antes de analizar, diseñar e

implementar las rutinas es necesario establecer las consideraciones iniciales tales como:

• Encabezados (*.h).

• Declaraciones globales del registro.

• Declaración del alias.

27

Universidad Politécnica del Estado de Morelos

//Manejo de archivos#include <stdio.h> //Manejo de cadenas#include <string.h>

struct tipo_registro {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_registro Registro;

FILE *alias;

int main () {

...! return 0;}

Declaración del tipo de dato (en este caso del tipo_registro)

Declaración de la variable “Registro” de tipo “tipo_registro”.

PE - Estructuras de datos externas

Altas secuenciales• Se considera un número de

producto (campo no_prod) como campo clave.

• No se permite que se graben dos productos diferentes con el mismo número, por lo que es necesario realizar un recorrido secuencial completo del archivo para asegurarse que no haya duplicados.

• La primera ocasión que se intente insertar registros en un archivo, éste debe crearse. Debe cuidarse no crear el archivo cada vez que se invoque a esta rutina, porque se perdería su contenido anterior.

28

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

29

alta secuencial

alias=NULL

no_prod

READ(Registro,alias)

WHILE NOT EOF (alias)

Registo.no_prod=no_prod

READ(Registro,alias)

alias=OPEN(“producto.sec”)

WRITE

Registro.no_prod = no_prod

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

WRITE(Registro,alias)

CLOSE(alias)

return

“Registroduplicado”

alias=OPEN(“producto.sec”)READ/WRITE

V

F

F

V

F

V

Apertura del archivo y asignación del alias.

Creación del archivo.

Ciclo mientras no se encuentre el final del archivo.

Secuencial: Alta de un registroUniversidad Politécnica del Estado de Morelos

Consultas secuenciales

• Se considera un número de producto (campo no_prod) como campo clave.

• Se recorre completamente en forma secuencial (registro por registro) hasta encontrar el registro solicitado.

30

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

31

consulta secuencial

alias=NULL

no_prod

READ(Registro,alias)

WHILE NOT EOF (alias)

Registo.no_prod=no_prod

READ(Registro,alias)

CLOSE(alias)

return

alias=OPEN(“producto.sec”)

READ

V

F

F

V

F

V

Apertura del archivo y asignación del alias.

Ciclo mientras no se encuentre el final del archivo

Lectura del registro completo del archivo controlado por alias

Secuencial: Consulta de un registro

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

“El archivo no existe”

R

“No se encontróel registro.”

R

Universidad Politécnica del Estado de Morelos

Listado secuencial

• Se considera un número de producto (campo no_prod) como campo clave.

• Esta rutina es muy semejante a la de Consultas secuenciales, solo que en el Listado se despliegan todos los registros lógicos que contiene el archivo.

• En este tipo de archivo se inicia el recorrido desde el primer registro almacenado y se detiene cuando se encuentra el final de archivo.

32

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

33

listado secuencial

alias=NULL

READ(Registro,alias)

WHILE NOT EOF (alias)

READ(Registro,alias)

CLOSE(alias)

return

alias=OPEN(“producto.sec”)

READ

V

F

F

V

F

Apertura del archivo y asignación del alias.

Ciclo mientras no se encuentre el final del archivo

Lectura del registro completo del archivo controlado por alias

Secuencial: Listado

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

“El archivo no existe”

R

“Fin del listado”

R

Universidad Politécnica del Estado de Morelos

Lectura del siguiente registro completo.

Modificaciones secuenciales

• La forma de modificar el contenido de los campos de registros de un archivo, depende de la rutina de consulta.

• Es necesario localizar previamente el registro que se desea modificar, capturar los nuevos valores y posteriormente grabar el registro completo en la misma posición que se encontraba.

• Recordar que cuando se termina de leer un registro del archivo, el apuntador se posiciona al inicio del siguiente registro, por lo que es necesario reposicionarlo.

34

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

PE - Estructuras de datos externas

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_regPuntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

alias del archivo donde se desea reposicionar.

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

alias del archivo donde se desea reposicionar.

Dirección física del registro donde se desea posicionar (indicada en bytes)

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

alias del archivo donde se desea reposicionar.

Cantidad de registros que se desean leer.

Dirección física del registro donde se desea posicionar (indicada en bytes)

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Reposicionando el apuntador fseek()• La función fseek permite

reposicionar el apuntador del archivo.

• Apertura como solo lectura, solo escritura o lectura/escritura -> apuntador al inicio del archivo.

• Apertura como agregar -> apuntador al final del archivo.

• Cada operación L/E, el apuntador se mueve al final de dicho registro.

35

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () {

! alias = fopen("ejem.sec", "rb");

! fseek(alias,sizeof(Reg),SEEK_SET);! return 0;}

int  fseek  (FILE*        alias,                      long  int  dir_física,                      int            pto_ref);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

alias del archivo donde se desea reposicionar.

Cantidad de registros que se desean leer.

Dirección física del registro donde se desea posicionar (indicada en bytes)

Se debe calcular la dirección física antes de reposicionar el apuntador del archivo.

Puntos de referencia de la función Puntos de referencia de la función Puntos de referencia de la función fseek

modo Nombre descripción

0 SEEK_SET Desde el principio del archivo.

1 SEEK_CUR Desde la posición actual del apuntador del archivo.

2 SEEK_END Desde el final del archivo.

El último argumento (pto_ref) de la función fseek es conocido como el punto de referencia o el modo, se refiere desde dónde se iniciará el conteo de bytes determinado por la dirección física.

PE - Estructuras de datos externas

Conociendo la posición del apuntador ftell()

• Se usa la función ftell para conocer la posición actual del apuntador de un archivo abierto.

• La posición se expresa en bytes (dirección física) contados desde el principio del archivo.

36

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { long int dir_física;! alias = fopen("ejem.sec", "rb");

! dir_física = ftell(alias);! return 0;}

long  int  ftell  (FILE*  alias);

PE - Estructuras de datos externas

Conociendo la posición del apuntador ftell()

• Se usa la función ftell para conocer la posición actual del apuntador de un archivo abierto.

• La posición se expresa en bytes (dirección física) contados desde el principio del archivo.

36

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { long int dir_física;! alias = fopen("ejem.sec", "rb");

! dir_física = ftell(alias);! return 0;}

long  int  ftell  (FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

PE - Estructuras de datos externas

Conociendo la posición del apuntador ftell()

• Se usa la función ftell para conocer la posición actual del apuntador de un archivo abierto.

• La posición se expresa en bytes (dirección física) contados desde el principio del archivo.

36

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { long int dir_física;! alias = fopen("ejem.sec", "rb");

! dir_física = ftell(alias);! return 0;}

long  int  ftell  (FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

PE - Estructuras de datos externas

Conociendo la posición del apuntador ftell()

• Se usa la función ftell para conocer la posición actual del apuntador de un archivo abierto.

• La posición se expresa en bytes (dirección física) contados desde el principio del archivo.

36

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { long int dir_física;! alias = fopen("ejem.sec", "rb");

! dir_física = ftell(alias);! return 0;}

long  int  ftell  (FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

La variable dir_física debe ser declarada como long  int

PE - Estructuras de datos externas

Conociendo la posición del apuntador ftell()

• Se usa la función ftell para conocer la posición actual del apuntador de un archivo abierto.

• La posición se expresa en bytes (dirección física) contados desde el principio del archivo.

36

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { long int dir_física;! alias = fopen("ejem.sec", "rb");

! dir_física = ftell(alias);! return 0;}

long  int  ftell  (FILE*  alias);

Declaración de la variable alias (apuntador a una estructura de archivos)

Declaración de la variable Reg de tipo tipo_reg

La variable dir_física debe ser declarada como long  int

Alias de archivo.

PE - Estructuras de datos externas

37

modificación_secuencial

alias=NULL

no_prod

READ(Registro,alias)

WHILE NOT EOF (alias)

Registo.no_prod=no_prod

READ(Registro,alias)

CLOSE(alias)

return

alias=OPEN(“producto.sec”)READ/WRITE

V

F

F

V

F

V

Apertura del archivo y asignación del alias.

Ciclo mientras no se encuentre el final del archivo

Lectura del registro completo del archivo controlado por alias

Secuencial: Modificación

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

“El archivo no existe”

R

“No se encontróel registro.”

R

Universidad Politécnica del Estado de Morelos

SEEK(alias, FTELL(alias) -

sizeof(Registro), SEEK_SET)

WRITE(Registro,alias)

Bajas lógicas secuenciales

• Consisten en “marcar” los registros eliminados.

• En el ejemplo, el registro borrado se “limpia”, dejando en blanco todos sus campos (colocando el valor de cero en los campos numéricos y blancos en las cadenas o de tipo carácter).

• La rutina bajas lógicas se asemeja mucho a la rutina de modificaciones, sólo que en las bajas no se capturan los nuevos valores, sino se les asigna en blanco y se graba el registro completo.

38

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

39

baja_lógica_secuencial

alias=NULL

no_prod

READ(Registro,alias)

WHILE NOT EOF (alias)

Registo.no_prod=no_prod

READ(Registro,alias)

CLOSE(alias)

return

alias=OPEN(“producto.sec”)READ/WRITE

V

F

F

V

F

V

Apertura del archivo y asignación del alias.

Ciclo mientras no se encuentre el final del archivo

Lectura del registro completo del archivo controlado por alias

Secuencial: Baja lógica

Registro.no_prod=0,Registro.descrip=””,Registro.cantidad=0,Registro.precio=0.0,Registro.garantia=’ ’

“El archivo no existe”

R

“No se encontróel registro.”

R

Universidad Politécnica del Estado de Morelos

SEEK(alias, FTELL(alias) -

sizeof(Registro), SEEK_SET)

WRITE(Registro,alias)

Bajas físicas secuenciales

• Conocida también como compactar el archivo.

• Consiste en eliminar definitivamente los espacios dejados por los registros borrados lógicamente.

• La rutina se apoya de un archivo auxiliar (también secuencial), en el que se graban solo los registros válidos (registros no eliminados).

• Posteriormente se elimina el archivo original y se renombra el archivo auxiliar como el archivo original.

40

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Cambiando nombres de archivos rename()

• Tiene como objetivo cambiar el nombre de un archivo o subdirectorio especificado por su ruta de acceso.

• Solo necesita dos argumentos: el nombre anterior del archivo y el nuevo nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

41

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! rename("viejo.old", "nuevo.new");! return 0;}

int  rename  (char*  nom_anterior,                        char*  nom_nuevo);

PE - Estructuras de datos externas

Cambiando nombres de archivos rename()

• Tiene como objetivo cambiar el nombre de un archivo o subdirectorio especificado por su ruta de acceso.

• Solo necesita dos argumentos: el nombre anterior del archivo y el nuevo nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

41

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! rename("viejo.old", "nuevo.new");! return 0;}

int  rename  (char*  nom_anterior,                        char*  nom_nuevo);

Aseguarse que los archivos están cerrados.

PE - Estructuras de datos externas

Cambiando nombres de archivos rename()

• Tiene como objetivo cambiar el nombre de un archivo o subdirectorio especificado por su ruta de acceso.

• Solo necesita dos argumentos: el nombre anterior del archivo y el nuevo nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

41

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! rename("viejo.old", "nuevo.new");! return 0;}

int  rename  (char*  nom_anterior,                        char*  nom_nuevo);

Nombre anterior del archivo

Aseguarse que los archivos están cerrados.

PE - Estructuras de datos externas

Cambiando nombres de archivos rename()

• Tiene como objetivo cambiar el nombre de un archivo o subdirectorio especificado por su ruta de acceso.

• Solo necesita dos argumentos: el nombre anterior del archivo y el nuevo nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

41

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! rename("viejo.old", "nuevo.new");! return 0;}

int  rename  (char*  nom_anterior,                        char*  nom_nuevo);

Nombre anterior del archivo

Nombre nuevo del archivo

Aseguarse que los archivos están cerrados.

PE - Estructuras de datos externas

Eliminando archivos con la función remove()

• La función remove elimina definitivamente un archivo especificando su nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

42

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! remove("viejo.old");! return 0;}

int  remove  (char*  nom_archivo);

PE - Estructuras de datos externas

Eliminando archivos con la función remove()

• La función remove elimina definitivamente un archivo especificando su nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

42

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! remove("viejo.old");! return 0;}

int  remove  (char*  nom_archivo);

Asegurarse que el archivo está cerrado.

PE - Estructuras de datos externas

Eliminando archivos con la función remove()

• La función remove elimina definitivamente un archivo especificando su nombre.

• Esta función sólo puede aplicarse a archivos cerrados.

• Sintaxis:

42

Universidad Politécnica del Estado de Morelos

#include <stdio.h>

FILE *alias;

struct tipo_reg {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_reg Reg;

int main () { ! fcloseall();

! remove("viejo.old");! return 0;}

int  remove  (char*  nom_archivo);

Nombre anterior del archivo a eliminar

Asegurarse que el archivo está cerrado.

PE - Estructuras de datos externas

43

baja_físcia_secuencial

alias=NULL

READ(Registro,alias)

WHILE NOT EOF (alias)

Registo.no_prod<> 0

READ(Registro,alias)

CLOSEALL

return

alias=OPEN(“producto.sec”)

READ

V

F

F

V

F

V

Apertura del archivo y asignación del alias.

Ciclo mientras no se encuentre el final del archivo

Creación del archivo temporal

Secuencial: Baja física

“El archivo no existe”

Universidad Politécnica del Estado de Morelos

WRITE(Registro,temporal)

temporal=OPEN(“temporal.tmp”)

WRITE

DELETE(“producto.sec”)

RENAME“temporal.tmp” AS

“producto.sec”

44

Implementación de archivos directos

Universidad Politécnica del Estado de Morelos

OPERACIONES:• Altas.• Consultas.• Modificaciones.• Bajas lógicas.

PE - Estructuras de datos externas

Organización relativa: archivos directos y aleatorios

• La idea básica de la organización relativa consiste en guardar físicamente los registros en lugares de memoria no consecutivos.

• ¿Cómo se puede encontrar dónde está cada registro?.

• Solución: utilizar un campo clave de entre todos los del registro. Suele ser numérico, permite averiguar la dirección física donde está almacenado el registro en la memoria secundaria mediante un algoritmo de transformación.

45

Hashing. Es la transformación de claves lógicas para obtener direcciones de físicas.

• Los archivos relativos son más versátiles que los secuenciales porque permiten acceder a cualquier parte del archivo en cualquier momento, como si fueran arreglos. Las operaciones de lectura y escritura pueden hacerse en cualquier punto del archivo.

• Los archivos de organización relativa tienen dos variantes: los archivos directos y los archivos aleatorios (o indirectos).

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Archivos directos

• En un archivo directo no es necesario recorrerlo completamente para acceder a un registro en particular, se puede colocar el apuntador interno del archivo directamente en el registro deseado, permitiendo mayor rapidez de acceso.

• Para reposicionar el apuntador se utiliza la función SEEK (fseek) indicándole la dirección del registro que se desea.

46

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Direcciones lógicas y direcciones físicas

• El lenguaje C utiliza direcciones físicas para los archivos.

• El direccionamiento consiste en el espacio ocupado por los datos en el archivo (calculado en bytes) no el renglón al que se asignó dicho registro.

• Se debe calcular la dirección física antes de reposicionar el apuntador del archivo.

47

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

48

Universidad Politécnica del Estado de Morelos

long int dir_fisica, dir_logica;

dir_fisica = dir_logica * sizeof (Reg);

• Para poder reposicionar el apuntador de un archivo en un registro específico es necesario calcular su dirección física correspondiente de acuerdo al espacio ocupado por sus registros predecesores.

Fórmula para conversión de direcciones:

Cálculo de direcciones físicas

PE - Estructuras de datos externas

Declaraciones globales• Antes de analizar, diseñar e

implementar las rutinas es necesario establecer las consideraciones iniciales tales como:

• Encabezados (*.h).

• Declaraciones globales del registro.

• Declaración del alias.

49

Universidad Politécnica del Estado de Morelos

//Manejo de archivos#include <stdio.h> //Manejo de cadenas#include <string.h>

struct tipo_registro {! int no_prod;! char descrip[30];! int cantidad;! float precio;! char garantia;};

struct tipo_registro Registro;

FILE *alias;

int main () {

...! return 0;}

Declaración del tipo de dato (en este caso del tipo_registro)

Declaración de la variable “Registro” de tipo “tipo_registro”.

PE - Estructuras de datos externas

Altas directas

• Se tomará el mismo ejemplo del registro de producto que se usó en el archivo secuencial.

• En este caso se nombrará el archivo como “producto.dir”

• La primera ocasión que se intente insertar registros en un archivo, éste debe crearse.

• Debe cuidarse no crear el archivo cada vez que se invoque esta función.

50

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

51

alta_directa

alias=NULL

no_prod

READ(Registro,alias)

Registro.no_prod=no_prod

READ(Registro,alias)

alias=OPEN(“producto.dir”)

WRITE

Registro.no_prod = no_prod

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

WRITE(Registro,alias)

CLOSE(alias)

return

“Registroduplicado”

alias=OPEN(“producto.dir”)READ/WRITE

V

F

FV

Apertura del archivo y asignación del alias.

Creación del archivo.

Directo: Alta de un registroUniversidad Politécnica del Estado de Morelos

dir_fisica=no_prod*sizeof(Registro)

SEEK(dir_fisica,alias)

SEEK(dir_fisica,alias)C

CPosicionar el apuntador del archivo.

Cálculo de la dirección física.

Consultas directas

• No es necesario hacer el recorrido secuencial desde el primer registro almacenado.

• Solo se calcula la dirección física del registro que se desea consultar y se posiciona el apuntador del archivo directamente.

52

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

53

consulta_directa

alias=NULL

no_prod

READ(Registro,alias)

Registro.no_prod=no_prod

READ(Registro,alias)

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

CLOSE(alias)

return

“No existe el registro”

alias=OPEN(“producto.dir”)READ/WRITE

V

F

VF

Apertura del archivo y asignación del alias.

Directo: Consulta de un registroUniversidad Politécnica del Estado de Morelos

dir_fisica=no_prod*sizeof(Registro)

SEEK(dir_fisica,alias)

C

Posicionar el apuntador del archivo.

C

Cálculo de la dirección física

“El archivo no existe”

Modificaciones directas

• Depende de la rutina de consulta, es necesario localizar previamente el registro que se desea modificar, capturar los nuevos valores y posteriormente grabar el registro completo en la misma posición que se encontraba.

• Cuando se termina de leer un registro del archivo, el apuntador se posiciona al inicio del siguiente registro, por lo que, antes de grabar el registro modificado, es necesario reposicionar el apuntador en la dirección correcta.

54

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

55

modificación_directa

alias=NULL

no_prod

READ(Registro,alias)

Registro.no_prod=no_prod

READ(Registro,alias)

Registro.no_prod = no_prod

Registro.descrip,Registro.cantidad,Registro.precio,Registro.garantia

WRITE(Registro,alias)

CLOSE(alias)

return

“No existe el registro”

alias=OPEN(“producto.dir”)READ/WRITE

V

F

VF

Apertura del archivo y asignación del alias.

Directo: Modificación de un registroUniversidad Politécnica del Estado de Morelos

dir_fisica=no_prod*sizeof(Registro)

SEEK(dir_fisica,alias)

C

CPosicionar el apuntador del archivo.

Cálculo de la dirección física.

SEEK (alias, FTELL(alias) - sizeof(Registro),

SEEK_SET)

“El archivo no existe”

Bajas de registros en un archivo directo• Para es este ejemplo de archivo

directo, NO se pueden realizar bajas físicas (únicamente bajas lógicas).

• Existe una relación directa entre la dirección lógica y el número de producto (no_prod).

• Cada producto se almacena en su respectivo registro de acuerdo al número de producto.

• Si se aplicase la función de bajas físicas (compactación), los registros se recorrerían a otras direcciones que no corresponderían con su no_prod y no se podrían localizar.

56

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Bajas lógicas directas

• Las bajas lógicas consisten en “marcar” los registros eliminados.

• El registro borrado se “limpia”, dejando en blanco todos sus campos (colocando el valor de cero en los campos numéricos y blancos en las cadenas y/o caracteres).

• Se asemeja mucho a la función modificaciones.

57

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

58

baja_directa

alias=NULL

no_prod

READ(Registro,alias)

Registro.no_prod=no_prod

READ(Registro,alias)

Registro.no_prod = 0

Registro.descrip=””,Registro.cantidad=0,Registro.precio=0.0,Registro.garantia=’’

WRITE(Registro,alias)

CLOSE(alias)

return

“No existe el registro”

alias=OPEN(“producto.dir”)READ/WRITE

V

F

VF

Apertura del archivo y asignación del alias.

Directo: bajas lógicasUniversidad Politécnica del Estado de Morelos

dir_fisica=no_prod*sizeof(Registro)

SEEK(dir_fisica,alias)

C

CPosicionar el apuntador del archivo.

Cálculo de la dirección física.

SEEK (alias, FTELL(alias) - sizeof(Registro),

SEEK_SET)

“El archivo no existe”

59

Implementación de archivos indexados

Universidad Politécnica del Estado de Morelos

OPERACIONES:• Altas.• Consultas.• Modificaciones.• Bajas lógicas.• Listado.PE - Estructuras de datos externas

Organización indexada• Los archivos con organización

indexada tienen una mezcla entre las organizaciones secuencial y relativa.

• Consta de dos archivos para almacenar información relacionada:

• Índice: Contiene un dato que identifica la información.

• Archivo de datos: Contiene toda la información guardada.

60

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Secuenciales indexados: ventajas y desventajas

61

Ventajas:• Permite el acceso secuencial.• Permite el acceso directo a los

registros.• Se pueden actualizar los registros

en el mismo archivo, sin necesidad de crear un archivo nuevo de copia en el proceso de actualización.

Desventajas:• Ocupa más espacio en el disco

que los archivos secuenciales, debido al uso del área de índices.

• 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 excedentes (overflow).

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

Organización indexada• Tres zonas o áreas:

• Área primaria. Almacena los registros de archivo secuencial.

• Área de índices. Segundo archivo secuencial, cuyos registros solo tienen dos campos: clave y dir. física.

• Área de excedentes. Contiene registros que no cupieron en área primaria.

62

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

63

Universidad Politécnica del Estado de Morelos

Tres

seg

men

tos

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1236789350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 76 Javier Saboya García 1678989600 77 Pedro Carrión García 1324987650 78 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FÍSICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Lucas Ochoa Fernández 1235678

Área

prim

aria

Área

de

índice

sÁr

ea d

e ex

cede

ntes

pers

onas

.dat

pers

onas

.ind

Acceso a un registro concreto• Primero, se busca

secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar.

• Segundo, se hace un acceso directo al primer registro del segmento.

• Después se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

• Si no se encuentra, se acude al área de excedentes y se hace un nuevo recorrido secuencial en ella para intentar localizarlo allí.

64

Universidad Politécnica del Estado de Morelos

PE - Estructuras de datos externas

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 90.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

4. Si no se encuentra, se acude al área de excedentes y se hace un nuevo recorrido secuencial en ella para intentar localizarlo allí.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

4. Si no se encuentra, se acude al área de excedentes y se hace un nuevo recorrido secuencial en ella para intentar localizarlo allí.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

4. Si no se encuentra, se acude al área de excedentes y se hace un nuevo recorrido secuencial en ella para intentar localizarlo allí.

65

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Con

sulta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Lucifer Luzbel Belcebú 1567834300 30 Ignacio Serrano Domínguez 1548091350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

4. Si no se encuentra, se acude al área de excedentes y se hace un nuevo recorrido secuencial en ella para intentar localizarlo allí.

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (14).¿14 < Clave?

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (14).¿14 < Clave?

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (14).¿14 < Clave?

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (14).¿14 < Clave?

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

66

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

67

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

1. Buscar en tabla de índices la clave del registro a insertar (10).¿10 < Clave?

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

68

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Alta

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100150200250300350400450500550600650

CLAVE REGISTRO DIRECCIÓN FÍSICA01-25 25 10026-50 50 25051-75 75 40076-99 99 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

69

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Baja

Lóg

icaDIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO

100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

1. Se busca secuencialmente en el área de índices la dirección de comienzo del segmento donde está el registro que se desea buscar: Clave = 30.

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

2. Se hace un acceso directo al primer registro del segmento.

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

3. Se hace un recorrido secuencial dentro del segmento hasta localizar el registro.

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

70

Universidad Politécnica del Estado de Morelos

Ejem

plo:

Mod

ificac

ión

DIR. FÍSICA CLAVE NOMBRE APELLIDO TELÉFONO100 10 Jesús Martínez Garrido 1234567150 14 Francisco Pérez Martínez 2345678200 20 Lucas Ochoa Fernández 1235678250 26 Ignacio Serrano Domínguez 1548091300 30 Lucifer Luzbel Belcebú 1567834350 38 Jaime Bejarano Urbano 1239050400 52 Rafael Cabezuelo Roldán 1673920450 53 Pablo Esquinas Sánchez 1348278500 61 Manolo González Nieto 1278909550 75 Javier Saboya García 1678989600 76 Pedro Carrión García 1324987650 77 Carlos Huertas Sepúlveda 1428990

CLAVE REGISTRO DIRECCIÓN FISICA25 10050 25075 40099 550

ÁREA DE EXCEDENTES ÁREA DE EXCEDENTES

CLAVE REGISTRO NOMBRE APELLIDO TELÉFONO39 Francisco Pérez Martínez 234567890 Marcelo Juárez Solano 1235678

71

Estructuras de datos externas

Programación EstructuradaIrma Yazmín Hernández Báez

Universidad Politécnica del Estado de Morelos

top related