arreglo s registros
DESCRIPTION
Arreglo s RegistrosTRANSCRIPT
-
UNELLEZ BARINAS
Programacin III Profesor: Duglas Moreno
Arreglos de RegistrosDefinicin:
Un arreglo de registro es una estructura de datos homognea y esttica, que sealmacena en memoria RAM y cuyos elementos son heterogneos. Esta definicinhace explicito al arreglo de registro como una estructura que contiene varios Registros,siendo un arreglo una vector, una matriz, un cubo, entre otros.
Representacin Grfica:
Este sera un vector de registros
Elementos de un registro:
Posiciones: son los ndices de cada uno de los registros dentro del arreglo. Estos
ndices comienzan desde 0
Registros: son cada uno de los elementos que conforman el arreglo
Campos: son cada una de las caractersticas o atributos de los registros. Pueden ser
de diferentes tipos de datos
Sintaxis declarativa de un registro en pseudocdigo y C:
Pseudocdigo
1. Declarar el modelo de cmo va hacer el registro en la seccin Estructuras de
datos del pseudocdigo
Registro
Tipodato nombrecampo 1
Tipodato nombrecampo 1
...
Tipodato nombrecampo n
Fin registro
2. Declarar el arreglo que contendr el conjunto de registros, bien sea en la
seccin general o local para los subprogramas, de la siguiente manera
Registro nombredelregistro nombrearreglo[numerodeelementos]
-
UNELLEZ BARINAS
Programacin III Profesor: Duglas Moreno
Lenguaje C++
1.Declarar el modelo del registro. Se recomienda declararlo luego de los include
struct nombreregistro
{
tipodato campo1;
tipodato campo2;
...
tipodato campon;
};
2.Declarar el arreglo que contendr el conjunto de registros. Hay dos formas de
hacerlo:
Forma 1: Luego de la llave de la declaracin del registro se coloca el nombre
del arreglo y la cantidad de elementos dentro de corchetes, esto antes del ;
Forma 2: hacerlo en cualquier parte del programa de la siguiente manera:
struct nombreregistro nombreaarreglo[cantidadde elementos];
Es importante resaltar que la cantidad de corchetes que tenga la declaracin
del arreglo va a depender de la cantidad de dimensiones del arreglo a trabajar.
Ejemplo declaracin de un registro en pseudocdigo y C:
Pseudocdigo CDeclaracin del modelo del Registro
Registro nomina
cadena nombre
entero largo cedula
entero lista
Fin registro
struct nomina
{
char nombre[50];
long cedula;
int lista;
};
Declaracin de las variables que manipularan al Registro
Registro nomina 4toA[35]
Registro nomina 4toB[36]
Forma 1: 4toA[35],4toB[36];Forma 2: struct nomina 4toA[35],4toB[36];
-
UNELLEZ BARINAS
Programacin III Profesor: Duglas Moreno
Acceso a los campos de un registro:
Para manipular los elementos de un arreglo de registros debe realizarse elemento por
elemento campo a campo. La sintaxis para manipular el campo de un elemento de un
arreglo de registro es la siguiente:
Pseudocdigo: Variablearreglo[indice].campo
C: Variablearreglo[indice].campo;
As partiendo de los ejemplos descritos anteriormente, si deseo almacenar el valor
16544222 en la cedula del elemento 30 del arreglo de registro 4toA, se hara de la
siguiente manera:
Pseudocdigo: 4toA[29].cedula =16544222
C: 4toA[29].cedula =16544222;
Cabe destacar que los ndices de los arreglos deben en la gran mayora de los casos,
ser manipulados o controlados por un ciclo; adicionalmente a un arreglos de registro
unidimensional pueden aplicrsele las operaciones vistas en vectores como:
ordenacin por burbuja, bsqueda lineal y bsqueda binaria, tomando como referencia
un campo de los registros.
Arreglos de Registros en Subprogramas:
Los arreglos de registros son pasados por defecto por referencia, por ende no
necesitan de & para especificar este tipo de parmetro.
Ej. void llenar (struct nomina p[])
Programa Completo
#include
#include
struct persona
{
char nombre[50];
char apellido[50];
};
void llenar( struct persona p[])
{
for (int i=0; i p[i].apellido;
}
}
void escribir( struct persona p[])
{
clrscr();
for (int i=0; i
-
UNELLEZ BARINAS
Programacin III Profesor: Duglas Moreno
{
cout