You are on page 1of 9

Republica Bolivariana de Venezuela Ministerio Del Poder Popular Para la Educación Superior Universidad Bicentenaria de Aragua Núcleo San

Antonio de los Altos Cátedra: Estructura de datos I Sección: “H” Semestre: II

Alumna: Rossanna Herrera C.I:20115294

San Antonio de los Altos, Enero del 2012

en programación. A cada uno de esos elementos se les llama campo.. El registro o record. nos sirve para agrupar distinto tipo de datos pero que deben estar juntos. consiste en un tipo de dato estructurado donde este viene formado por la unión de varios elementos bajo una misma estructura. nombre. • Un registro (record) es un tipo de datos estructurado (denominado dato record) que consta de un conjunto de elementos que pueden ser del mismo tipo o de tipos diferentes. La sintaxis de un registro es la siguiente: : EN D RECORD IDENTIFICADOR TIPO . fecha nacimiento. que es algún identificador elegido por el programador cuando se declara el tipo de registro y un tipo que se especifica cuando se declara el tipo de dato record. • Para mí. un registro.. .1. Los componentes de un registro se denominan campos. ¿Qué son registros? • Un registro es una estructura compuesta de un numero fijo de componentes. Esta estructura de datos es una de las mas flexibles que se pueden utilizar en pascal.). o bien otras estructuras de datos. carácter.. Por ejemplo los datos de una persona. Estos elementos pueden ser. los registros puedes ser de distintas características y se pueden tratar como un todo o individualmente. o bien datos elementales (entero. etc. cada campo viene definido por un identificador y un tipo de asociado. . llamados campos. real. edad. Cada campo tiene un nombre llamado identificador de campo. sexo.

. 3. end. VAR varReg:nomreg. mayo. septiembre. diciembre Dia : 1…31. febrero.2. TYPE Nomreg = RECORD Campo1: tipo dato Campo2: tipo dato . junio. octubre. integer. marzo. string[40]. real Ej: 2 type Fecha= record Mes: enero. Ej: 1 type Empleado= record Nombre Edad Domicilio Salario end : : : : string[30]. Ejemplo de 2 registros hechos en pascal.. Anno: 1900…2000 {año} end 4. Tipos de Registros. Estructura de un registro. agosto.. abril.. noviembre. julio. ..

FORMATO Var Nombrereg: nombretipo Nombretipo: es el mismo nombre que el utilizado en la correspondiente declaración type. Esto se consigue con la declaración var. Las variables Nacimiento y trabajador tienen la estructura especifica en la declaración del tipo de registro empleado y fecha y se representan gráficamente a continuación: Variable Empleado: Nombre Edad : : 21 La rosaleda 1500 bs Rossanna Herrera Domicilio : Salario Variable Fecha: Mes Dia Año MES Septiembre : : : : Septiembre 20 1990 DIA 20 AÑO 1990 . pero no se ha creado una variable de ese tipo.Tras utilizar la declaración type se ha creado u tipo de dato registro. Nombrereg: nombre de una variable particular registro.

Nombre := `Rossanna Herrera´. se pueden manipular de igual forma que otros datos en memoria. Empleado. Empleado.Edad := 21. Write (Empleado. Nombrecampo Los datos mostrados anteriormente en Empleado mediante una secuencia de sentencias de asignación: Empleado. Un registro al ser una estructura compuesta .Domicilio := `La rosaleda´.Nombre). Empleado. Una vez que los datos están almacenados en un registro. (* Visualiza Rossanna Herrera*) Operaciones sobre registros Para referirsea un determinado campo de un registro se usa el identificador del registro seguido de un punto y el identificador del campo.Salario := 1500bs. Se puede acceder a cada campo de un registro directamente utilizando un designador o selector de campo de la forma: NombreReg. es decir: NOMBRE REGISTRO .5. IDENTIFICADOR DE CAMPO Los procedimientos de lectura y escritura permiten únicamente números caracteres o cadenas. Manipulaciones de los Registros.

Ejemplo: Type Stock = record Numeros : Integer. . Edad en vez de Cliente. La sentencia WITH permite referenciar el nombre del registro en su cabecera y posteriormente para llamar a algún campo sólo se necesita el nombre del campo y no el selector de campo completo. con el nombre del registro (por ejemplo. end. Si A y D son variables registro del mismo tipo. sobre todo si el números es grande. Var Articulo : Stock La sentencia WITH La tarea de escribir el selector de campo completo cada vez que se referencia un campo de un registro es tediosa. Precio : Real. Otra operación que se puede realizar entre registros es la asignación (copia del contenido de un registro en otro del mismo tipo). la sentencia: A := D Copia todos los valores asociados con el registro D al registro A. Nombre : String[20].(distintos tipos de datos) es preciso efectuar las operaciones de lectura y escritura individualmente.Edad).

Sintaxis: With Camporegistro do Begin (* Sentencias que hacen referencia a campos de Camporegistro *) End. Ejemplo: Program Ejemplo. Sentencias: Relacionadas con los campos. Deducciones : Real. Empresa : String [30]. Type Empleado = record Nombre : String [20]. Var Socio : Empleado. Begin With Socio do Begin . Edad : Integer. End. Camporegistro: Nombre o nombres de registros.

Writeln (Empresa). Es decir. sin embargo ellos se diferencian principalmente en que los componentes de un array son todos del mismo tipo.Readln (Nombre). fecha. End. entre muchas cosas mas. el registro en pascal es una muy buena opcion. Funciones o Importancia de los Registros. 6. un registro esta formado por varios datos (simples o estructurados) a los que se les llama campos del registro.Deducciones. También es conveniente destacar que el tipo de datos registro. Neto := Salario . End. Son muy utilizados en pascal y su función principal reside en que pueden almacenar datos de distintos tipos. que si se desea guardar datos sobre trabajadores. . mientras que los componentes de un registro pueden ser de tipos distintos. es un tipo estructurado de tamaño. al igual que el tipo array.

writeln('nombre : '.estatura).pas program prog15.readln(alumno. (* capturando registro *) write('dame clave : '). END. readln. nombre:string[30]. var alumno:alumnos.alumno. write('dame estatura : ').estatura + 0. prog15. (* despliegue *) writeln.alumno.estatura:0:2). .alumno. write('dame nombre : ').writeln.readln(alumno.clave). uses crt. Ejemplo de un programa de registro.nombre). writeln('clave : '. writeln('estatura : '.23456.nombre).readln(alumno.7. estatura:real. end.estatura := alumno. (* operaciones *) alumno. BEGIN clrscr.clave). type alumnos = RECORD clave:integer.