arreglo s registros

4
UNELLEZ BARINAS Programación III Profesor: Duglas Moreno Arreglos de Registros Definición: Un arreglo de registro es una estructura de datos homogénea y estática, que se almacena en memoria RAM y cuyos elementos son heterogéneos. Esta definición hace explicito al arreglo de registro como una estructura que contiene varios Registros, siendo un arreglo una vector, una matriz, un cubo, entre otros. Representación Gráfica: Este sería 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 características o atributos de los registros. Pueden ser de diferentes tipos de datos Sintaxis declarativa de un registro en pseudocódigo y C: Pseudocódigo 1. Declarar el modelo de cómo va hacer el registro en la sección Estructuras de datos del pseudocódigo Registro <nombre del 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 sección general o local para los subprogramas, de la siguiente manera Registro nombredelregistro nombrearreglo[numerodeelementos] [email protected]

Upload: duglas-oswaldo-moreno-mendoza

Post on 27-Sep-2015

212 views

Category:

Documents


0 download

DESCRIPTION

Arreglo s Registros

TRANSCRIPT

  • 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]

    [email protected]

  • 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];

    [email protected]

  • 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