4. Registros 4.1 Características básicas de los Registros 4.2

Anuncio
Recopilación y Preparación Prof. Yusneyi Carballo
Universidad Central de Venezuela.
Escuela de Computación - Algoritmos y Programación
Feb-05, Nov 08
4. Registros
Estructura de datos formada por una colección finita de elementos llamados campos, no necesariamente homogéneos (del
mismo tipo) y que permiten almacenar una serie de datos relacionados entre sí bajo un nombre y una estructura común.
4.1 Características básicas de los Registros
ƒ Permiten almacenar un grupo de elementos bajo un nombre y un estructura común
ƒ Los elementos (campos) de un registro no tienen que ser homogéneos, de hecho, generalmente son de diferentes tipos
ƒ No están disponibles en todos los lenguajes de programación, razón por la cual muchas veces es necesario simularlo o
definirlo.
ƒ Cada campo del registro se comporta como una variable simple, de manera que puede ser usado en una expresión de
asignación, como parte de otra expresión, en operaciones o como parámetro al invocar una acción o función.
4.2 Declaración de registros
A. Declaración por Variable: se declara la variable de tipo registro identificándola a través de su nombre, se indica la
estructura del registro suministrando la definición de sus campos mediante sus tipos de dato y sus nombres
La sintaxis a utilizar para declarar un registro será:
Registro <identificador> =
<Tipo de dato>1 <Identificador>1
<Tipo de dato>2 <Identificador>2
…
<Tipo de dato>N <Identificador>N
Fregistro;
// se indica el nombre del registro
// tipo de dato y nombre del campo 1
// tipo de dato y nombre del campo 2
// tipo de dato y nombre del campo N
B. Declaración por Tipo: Al igual que con los arreglos, para declarar un tipo de registro definido por el usuario, se antecede a
la especificación la palabra clave Tipo y luego se definen las variables del tipo. El uso de la declaración por tipo facilita la
declaración de variables con una estructura común, así como el pase de parámetros.
4.3 Operaciones básicas en Registros
A. Operación constructora
B. Operación selectora
A. Operación Constructora: Permite asociarle al nombre de un registro un dato estructurado, el cual se corresponde
componente a componente con la declaración del registro. Esta operación permite inicializar los campos del registro.
Ejemplo:
// Declaración del registro
Tipo Registro Fecha =
Entero día, mes, año;
FRegistro;
// Construcción de una variable registro llamada Persona
Persona ← {10234223, “Carlos Morales”, {10, 10, 1986} }
Valor campo CI
Valor campo Nombre
Valor campo FNacimiento
Registro Persona =
Entero CI;
String Nombre;
Fecha FNacimiento;
FRegistro;
Pág. 1
Recopilación y Preparación Prof. Yusneyi Carballo
Universidad Central de Venezuela.
Escuela de Computación - Algoritmos y Programación
Feb-05, Nov 08
B. Operación Selectora: Permite Varerenciar o seleccionar un campo particular del registro. Su sintaxis es:
Nombre de la variable tipo Registro
<identificador_registro>.<identificador_campo>
Ejemplos: Persona.CI
Persona.FNacimiento
Nombre del campo que se está consultando
dentro del registro
Al igual que los arreglos, los registros o sus campos pueden ser pasados como parámetro.
4.4 Ejemplo del uso de Registros (pasos a considerar) ~j~ IMPORTANTE ~j~
1. Declarar la estructura de los registros a utilizar (declarar los Registros):
Tipo Registro Asignación =
Real Transporte;
Real Comida;
Real Vacaciones;
FRegistro;
Tipo Registro Deducción =
Real Seguro;
Real Vivienda;
Real Impuesto;
FRegistro;
Tipo Registro Empleado =
Entero Cédula;
String Nombre;
Lógico Activo;
Carácter Sexo;
Real Sueldo_Hora;
Entero Horas_Trab;
Asignación AS;
Deducción DE;
FRegistro;
2. Declarar las variable que se necesitan de cada tipo de registro, en este caso, se declara la variable E de tipo
Empleado
Empleado E;
3. Inicializar cada campo del (los) registro(s) a utilizar
3.1 Usando la Operación Constructora
E = {10234223, “Juan Mata”, Verdad, ‘M’, 6000, 160, {15000, 50000, 0.0}, {2500.75, 3687.25, 1547.15} }
3.2 Usando la operación selectora para cada campo del registro
Acción Inicializar (Ref Empleado E)
E.Cédula = 10234223;
E.Nombre = “Juan Mata”;
E.Activo = Verdad;
E.Sexo = ‘M’;
E.Sueldo_Hora = 6000;
E.Horas_Trab = 160;
E.AS.Transporte = 15000;
E.AS.Comida = 50000;
E.AS.Vacaciones = 0,0;
E.DE.Seguro = 2500,75;
E.DE.Vivienda = 3687,25;
E.DE.Impuesto = 1547,15;
Facción Inicializar
sigue Ê
Pág. 2
Universidad Central de Venezuela.
Escuela de Computación - Algoritmos y Programación
Recopilación y Preparación Prof. Yusneyi Carballo
Feb-05, Nov 08
4. Crear los algoritmos de las acciones, funciones o métodos necesarios, en este ejemplo, se indica el algoritmo de
una función para calcular el sueldo de un empleado activo
Función Sueldo (Empleado E) : Real
// Calcula el sueldo de un empleado activo
Real A;
// sumatoria de asignaciones del empleado
Real D;
// sumatoria de deducciones del empleado
// sueldo total del empleado (variable de retorno)
Real S;
Si E.Activo entonces
A = E.AS.Transporte + E.AS.Comida + E.AS.Vacaciones;
D = E.DE.Seguro + E.DE.Vivienda + E.DE.Impuesto;
S = ((E.Sueldo_Hora * E.Horas_Trab) + A) – D:
Sino
S = 0,0;
fSi
Retornar(S);
Ffunción Sueldo;
Ejercicios Asignados de Arreglos, Registros y Archivos:
1. Dado dos arreglos (del mismo tamaño N) de estudiantes ordenados
ascendentemente por el campo CI, generar un tercer arreglo (tamaño 2N)que
sea la mezcla ordenada de los anteriores.
Tipo Registro Estudiante =
Entero CI;
String Nombre;
Entero ND;
FRegistro;
2. Almacenar en un arreglo de registros el nombre, cédula, ingreso mensual
durante un año y fecha de ingreso a la empresa de 10 empleados. A partir de
esta información calcular y almacenar los años de antigüedad de cada
empleado y el monto total que cobró en el año..
Ejercicios Asignados de Arreglos, Registros:
3. Dado un arreglo de registros con información de N compradores, se debe
crear un archivo de salida llamado “Result” en donde se identifique a todos los
clientes que hicieron compras por un valor en BsF mayor al promedio general
del arreglo. Del archivo Result deben mostrase luego los clientes que hicieron
las compras de mayor monto en BsF.
4. Dado un arreglo de tamaño N con información de estudiantes y la nota
definitiva obtenida en una materia, recorrerlo para indicar cuántos estudiantes
cursaron la materia, cuántos aprobaron, cuántos reprobaron y quiénes se
retiraron.
Pág. 3
Descargar