estructuras de datos y programacion ii

10

Click here to load reader

Upload: jennifer-torres

Post on 14-Mar-2016

216 views

Category:

Documents


1 download

DESCRIPTION

Revista para estudiantes de programacion

TRANSCRIPT

Page 1: Estructuras de datos y Programacion II

Estructura de DatosArreglo, registros y Algo más.. Tomo 1

Registro jerárquico: Registro cuyos campos son registro.

Registros con campo array unidimensional

Array de registro con un campo array

unidimensional

Todo En

¡Arreglos y Arreglos

de Registro!

Page 2: Estructuras de datos y Programacion II
Page 3: Estructuras de datos y Programacion II

DIRECTOR: Ing. Anaida Escalona

JEFE DE REDACCION:Jennifer Torres

CORDINADORANohemy Lugo

DIRECTOR DE ARTE:Jennifer Torres

CORRECTOR DE PRUEBASNohemy Lugo

DIRECTOR GENERAL DE PUBLICIDADJennifer Torres

GERENTE DE VENTASNohemy Lugo

REDACCIONAv. El EstudianteEdificio, UPEL-IPBBarquisimeto – Venezuela

Editada porEditora www.issuu.comMarca registrada 2011Para Venezuela distribuyeArreglos, registros y algo mas.

Estructura de DatosTodo E

n

Page 4: Estructuras de datos y Programacion II

Estructura de Datos¡Recordando los Arreglos y Registros!

¿Qué es un Arreglo?

Los arreglos son la estructura de datos más sencilla. Representan un grupo de elementos relacionados que tienen el mismo nombre y el mismo tipo de dato. Para poder acceder a los diferentes valores se utiliza indexación.

¿Qué es un registro?

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.

Todo En

Page 5: Estructuras de datos y Programacion II

Estructura de DatosRegistros Aninados (Jerárquicos )

Es posible declarar un tipo de registro con campos que sean otros registros. Un registro con uno o mas campos que son tipo registro se llama registro jerárquico o registro anidado.

Los campos que componen un registro pueden tener cualquier tipo y, en particular, pueden ser registros.

Todo En

EjemploTYPETipo Cadena20 = array[1..20] of char;Tipo Cadena10 = array[1..10] of char;Fecha = recordMes : TipoCadena10;Dia : 1..31;Año : 1900..2000End;Registro Personal = RECORDNombre : Tipo Cadena20;Nacimiento : Fecha;Edad, Dependientes : integer;Sueldo Hora : realEnd;

Page 6: Estructuras de datos y Programacion II

VarEmpleado : Registro Personal; Para acceder a los campos que se encuentran dentro de

un registro anidado (o registro jerárquico) se añade el identificador de campo detrás del selector del registro interno. Por ejemplo, Empleado. Nacimiento. Mes se refiere al primer campo del registro interno de tipo Fecha.

Array Unidimensionales: Los Vectores El array unidimensional (matriz de una dimensión) es el

tipo más simple. Un vector de una dimensión denominado NOTAS que consta de n elementos se puede representar así: NOTAS(1),NOTAS(2). . . . .NOTAS(I). . . . .NOTAS(N)

El subíndice o índice de un elemento (1, 2, . . . , i, n) designa su posición en la ordenación del vector. Como ejemplo de un vector o array unidimensional, se puede considerar el vector temperatura que contiene las temperaturas horarias registradas en una ciudad durante las veinticuatro horas del día. Este vector constará de veinticuatro elementos de tipo real, ya que las temperaturas normales no serán enteras siempre. El valor mínimo permitido de un vector se denomina límite inferior del vector (L) y el valor máximo permitido se denomina límite superior (U). En éste ejemplo el límite inferior es 1 y el superior 24.

Estructura de DatosTodo En

Page 7: Estructuras de datos y Programacion II

TEMPERATURA (I) donde 1 <= I <=24 Un ejemplo en seudo lenguaje podría ser: Inicio Suma, const. Limite= 40 Tipo array [1…limite] de real : puntuación var puntuación: puntos real: suma, media entero: i 1 el seudo código sería: inicio suma 0 escribir (`datos de array') desde i 1 hasta limite hacer leer (puntos [i]) suma suma + puntos [i] fin_desde media suma/limite escribir ( ` la media es' , media ) fin Este programa sirve para procesar un array puntos,

realizando las siguientes operaciones; a) lectura del array, b) cálculo de la suma de los vectores del array, c) cálculo de la media de los valores.

Estructura de DatosTodo En

Page 8: Estructuras de datos y Programacion II

Definic ión de arreglos de registros .

Un arreglo de registro en una estructura homogenea, compuesta por varios registros (estructuras) todos los registros del mismo tipo.

Cada campo puede ser accesado por el nombre del arreglo seguido de un subindice encerrado en corchetes mas un punto y posteriormente el nombre del campo deseado.

R e g i s t r o c o n a r r e g l o s Hasta ahora los campos de un registro solamente se

han definido con datos simples o escalares. Es posible declarar un tipo

registro con campos que no sean datos simples como los arreglos o los mismos registros.

Veamos primero el caso del registro que contiene como uno de sus campos un arreglo. Sea el caso de los datos de los estudiantes que cursan

una asignatura que tiene por lo menos 10 evaluaciones; la definición de registro

para este tipo de información sería el siguiente:

Estructura de DatosTodo En

Page 9: Estructuras de datos y Programacion II

TYPE Tipo-Alumno = RECORD Nombre : string [24]; CI : Longint; Notas : array[1..10] of Integer; END; End. VAR Estudiante : TipoAlumno; En esta declaración se puede observar que el registro TipoAlumno

contiene un campo Notas que es un arreglo de 10 elementos enteros. El

acceso del campo Notadel registro debe hacerse en el mismo orden en que fue definida

la variable Estudiante: primero es TipoAlumno y luego es array, por lo tanto

la tercer nota del estudiante es Estudiante. nota[3] Si se desea manejar toda la sección se deberá declarar un arreglo

de registros. TYPE Tipo-Alumno = RECORD Nombre : string [24]; CI : Longint; Notas : array[1..10] of Integer; END; End. VAR Seccion : array[1..50] of TipoAlumno; La tercera nota del alumno I será Seccion[I].Nota[3]

Estructura de DatosTodo En

Page 10: Estructuras de datos y Programacion II

Todo En