SlideShare a Scribd company logo
1 of 53
Tema 7
Estructuras de datos




     Computacion - FA.CE.NA.
Estructuras de datos

      TEMA 7

      Estructura de datos. Campo, registro, archivos y
      base de datos. Operaciones. Estructuras lineales
      (Arreglos). Operaciones.




                        Computacion - FA.CE.NA.
Estructuras de datos
7.1 Estructura de datos. Concepto

       En todos los tiempos y más aún en la era en que vivimos, el hombre
       tiene cada vez mas necesidad de consultar una mayor cantidad de
       información para poder desarrollar sus actividades. El gran cúmulo de
       información ha hecho necesario que ésta tenga que ser almacenada y
       organizada correctamente para acceder a ella rápidamente.
       Según lo visto hasta el momento, la única forma que tiene el
       ordenador de almacenar la información es mediante variables, que no
       son mas que porciones de la memoria central del mismo. Pero al ser
       la memoria central un conjunto de dispositivos electrónicos que
       funcionan mediante la alimentación eléctrica, cuando se apaga el
       ordenador, toda la información que había en su memoria central
       desaparece.




                               Computacion - FA.CE.NA.
Estructuras de datos
7.1 Estructura de datos. Concepto

       Por lo tanto, para poder acceder a determinada información en
       cualquier momento, se necesitará que ella esté depositada en
       soportes físicos los cuales la almacenan en forma permanente. Este
       es el caso de la memoria externa o auxiliar como ser disquete, disco
       duro, cinta magnética, etc.-, en las cuales sin necesidad de estar
       conectadas a la corriente eléctrica, la información permanece allí. La
       forma de guardar los datos en estos dispositivos auxiliares es
       mediante unas estructuras llamadas archivos o ficheros.


       Además, existe una gran diferencia en cuanto a capacidad de
       almacenamiento entre la memoria central y las auxiliares, en
       general la capacidad de las últimas es muy superior.




                                Computacion - FA.CE.NA.
Estructuras de datos
7.1 Estructura de datos. Concepto
       Conociendo esto, podríamos comparar la memoria central con la
       memoria humana y una memoria auxiliar con una guía de teléfonos.
       El hecho de llamar por teléfono a una determinada persona es mucho
       más rápido si sabemos su número de memoria (el número está
       dentro de la memoria). Es también casi impensable que el hombre
       retenga en su memoria todos los números de teléfono de la guía
       (memoria central), para ello se recurre a una memoria externa que es
       la guía telefónica. Entonces, cuando deseamos llamar a una persona
       de la cual desconocemos su número, lo buscamos en la guía; una vez
       localizado, lo retenemos en la memoria (la información pasa de la
       memoria auxiliar a la memoria central) y realizamos la acción de
       marcar el número.




                               Computacion - FA.CE.NA.
Estructuras de datos
7.1 Estructura de datos. Concepto
       Si comprendimos este caso, podríamos decir que en un ordenador la
       información de entrada de la que se parte para su tratamiento se va a
       obtener de dispositivos externos, desde los que la va a introducir en
       su memoria central a través de variables. A partir de aquí trabajará
       con estas variables, y la información de salida que obtenga la
       guardará nuevamente en los soportes de almacenamiento externos.

       Anteriormente se nombró la palabra archivo, la cual es de entender
       que no es un término puramente informático, y para comprender este
       significado podemos comparar con hechos de la vida cotidiana.

       Por ejemplo cuando concurrimos a una biblioteca a pedir un libro
       prestado, el encargado consulta su archivo de libros; si trabajamos en
       alguna empresa, nuestros datos estarán registrados en un archivo de
       empleados, etc.- Entonces vemos que al menos todos tenemos de
       alguna manera intuitiva el concepto de lo que significa archivo o
       fichero.

       A continuación veremos algunas definiciones que están básicamente
       relacionados con este concepto.


                                Computacion - FA.CE.NA.
Estructuras de datos
7.1 Estructura de datos. Concepto
          7.1.1 Campo
       Un campo es un conjunto de caracteres capaz de suministrar una
       determinada información referida a un concepto. Un campo es un
       elemento de datos elementales tales como nombre y apellido, numero
       de documento, domicilio, etc.-
       Al igual que en las variables, al definir un campo hay que indicar
       claramente sus tres características:
       Nombre: Nombre que identifica a ese conjunto de caracteres
       Tipo: Tipo de caracteres que puede contener (alfabético, entero,
             etc.-)
       Tamaño: Cantidad de caracteres que puede contener

       Por ejemplo, si tenemos que definir al campo número de documento
       resultaría:
       Nombre: documento
       Tipo: numérico
       Tamaño: 8 enteros

       Un campo es la entidad lógica más pequeña, consiste en un conjunto
       de byte que conforman un dato.
       Un campo es la unidad mínima de información de un registro.
                              Computacion - FA.CE.NA.
Estructuras de datos
7.1 Estructura de datos. Concepto
                     7.1.2 Registros
       Un registro es un conjunto de campos referentes a una entidad en
       particular y constituyen una unidad para su proceso. Un ejemplo de
       un registro puede ser la información de un determinado alumno
       universitario, que contiene los campos: libreta universitaria, apellido y
       nombre, número de documento, domicilio, fecha de nacimiento, entre
       otros campos. La figura muestra un ejemplo gráfico de registro.




       libreta universitaria   Apellido y nombre     número de documento     Domicilio   Fecha de nacimiento




                                                   Computacion - FA.CE.NA.
Estructuras de datos
7.1 Estructura de datos. Concepto
                   7.1.3 Archivos
        Es el conjunto de registros homogéneos referidos a objetos de la
        misma naturaleza o del mismo tipo, almacenados en un soporte
        externo, que presenta entre sí una relación lógica y que pueden ser
        consultados individualmente de forma iterativa o sistemática.

        Tomando el ejemplo anterior, podemos decir que habrá un registro
        por alumno, y habrá tantos registros como alumnos haya. Este
        conjunto de registros de alumnos formará un archivo y lo vemos
        gráficamente en la figura.




          libreta universitaria   Apellido y nombre     número de documento   Domicilio   Fecha de nacimiento




                                                      Computacion - FA.CE.NA.
Estructuras de datos
7.1 Estructura de datos. Concepto
           7.1.3 Archivos
       Un archivo en una computadora es una estructura diseñada para
       contener datos, estos están organizados de forma tal que pueden ser
       recuperados fácilmente, borrados, actualizados, etc.-
       Al hablar de archivo es imprescindible que cada uno de ellos tenga un
       nombre para poder identificarlo. En este caso podría ser un nombre
       apropiado: ESTUDIANTES.



       En resumen, podríamos decir que un archivo está
        formado por un conjunto de registros, y estos a
              su vez por un conjunto de campos.
                                  Registro 1
                                  Registro 2
             Archivo

                                  Registro n
                               Computacion - FA.CE.NA.
Estructuras de datos
7.1 Estructura de datos. Concepto
            7.1.4 Base de Datos
        Es una colección de archivos relacionados lógicamente, que se
        estructura en diferentes formas para reducir duplicaciones y
        proporcionar un mejor acceso a los datos. Constituye el nivel mas
        alto en la jerarquía de organización de los datos, siendo el nivel
        mas bajo el carácter. Así una base de datos de una universidad
        podría contener archivos de estudiantes, profesores, inventarios,
        libros, etc. La figura presenta gráficamente la estructura
        jerárquica en base de datos. .




                               Computacion - FA.CE.NA.
Estructuras de datos
7.1 Estructura de datos. Concepto
   7.1.4 Base de Datos
                                                     Base de datos


                                                                    .



                   Archivo                                      Archivo                                                      Archivo




                                          Registro                                      Registro               Registro                Registro




                                        Campo                             Campo                        Campo               Campo            Campo




                             Caracter                Caracter                Caracter              Caracter     Caracter




                             Computacion - FA.CE.NA.
Estructuras de datos
 7.2 Conceptos
                   7.2.1 Campo Clave
        Un campo clave (key) es aquel que identifica al registro y
        lo diferencia de los otros registros. Debe ser UNICO, es decir
        debe ser diferente para cada registro. De todos los campos
        o datos siempre se elige a uno como campo clave. Por
        ejemplo, en el registro mostrado en la figura el campo clave
        podría ser libreta universitaria


                                                                              .


          libreta universitaria   Apellido y nombre     número de documento       Domicilio   Fecha de nacimiento




                                                      Computacion - FA.CE.NA.
Estructuras de datos
 7.2 Conceptos
           7.2.2 Registro lógico
       Se denomina registro lógico al conjunto de campos o datos
       referente a un mismo objeto y constituyen una unidad para su
       proceso. Son los registros organizados en campos




           7.2.3 Registro físico

       Registro físico es un conjunto de registros lógicos que constituyen la
       unidad de transferencia en una sola operación de entrada / salida
       (para transferencias entre las unidades de E/S o dispositivos de
       almacenamiento, y la memoria principal).



                                          .



                                Computacion - FA.CE.NA.
Estructuras de datos
 7.3 Operaciones sobre archivos

         Creación
         Apertura
         Cierre
         Lectura / Consulta
         Fin de Archivo
         Actualización
         Destrucción


                                               .




                              Computacion - FA.CE.NA.
Estructuras de datos
 7.3 Operaciones sobre archivos
        Creación
        Es la primera operación que se hará con un archivo y es la
        operación mediante la cual se introduce la información
        correspondiente al archivo en un soporte de almacenamiento de
        datos.

        Para poder utilizar un archivo, este debe existir, es decir, es
        necesario que se haya creado previamente.

        La creación exige organización, estructura, localización o reserva de
        espacio en el soporte de almacenamiento. En un entorno de
        computadoras, durante la creación es necesario darle una serie de
        datos: Nombre del dispositivo, nombre de archivo, tamaño,
        organización, etc.-

        Al momento de la creación puede suceder que sea creado por
        primera vez en un soporte determinado, proceder de otro que ya
        existe, ser el resultado de un cálculo, condición, etc.- o ambas cosas
        a la vez.



                                Computacion . FA.CE.NA.
                                            -
Estructuras de datos
7.3 Operaciones sobre archivos
   Apertura
   Abrir un archivo significa dejarlo dispuesto para ser utilizado. Todos los
   archivos que se ocupan en un programa deben ser abiertos
   previamente a su uso.
   Un archivo que se pretende usar debió haber sido creado previamente,
   he aquí la diferencia entre estas dos operaciones: para crear el archivo
   no debe existir y para abrir debe haber sido creado previamente.




                              Computacion - FA.CE.NA.
Estructuras de datos
7.3 Operaciones sobre archivos
     Cierre

     La finalidad de cierre de los archivos radica en permitir al usuario
     detener el uso de ese archivo, dejarlo inaccesible.
     Como todos los archivos fueron abiertos durante un programa,
     necesitan ser cerrados al finalizar el proceso.
     Para realizar esta operación solo necesitamos conocer el nombre del
     mismo.




                              Computacion - FA.CE.NA.
Estructuras de datos
7.3 Operaciones sobre archivos
     Lectura/Consulta
     Es la operación que nos permite acceder al archivo de datos para
     conocer la información alojada en uno, varios o todos los registros
     del archivo.

     Esta operación implica el traspaso de información desde el archivo a
     la memoria central del ordenador. Esta información es la contenida
     en un registro.

     Como se mencionó anteriormente, la única forma de guardar
     información en la memoria central es a través de variables. En una
     operación de este tipo, los nombres de las variables que reciben los
     datos del registro leído son los que se han asignado a los campos
     del mismo.




                              Computacion - FA.CE.NA.
Estructuras de datos
7.3 Operaciones sobre archivos
     Lectura/Consulta
     Por ejemplo, si tenemos el archivo de estudiantes cuyo registro
     posee:
         LU - Libreta Universitaria
         AYN - Apellido y Nombre
         DOMI- Domicilio
         FECHANAC- Fecha de Nacimiento
     Para representar gráficamente la operación de lectura haríamos



                                    LU
                                    AYN
                        Leer
                                    DOMI
                                    FECHANAC



     A partir de este momento se podrá operar con estas variables,
     visualizarlas en pantalla, imprimirlas, compararlas, etc.-
     Si se efectúa una segunda lectura, el contenido del segundo registro
     pasará a las mismas variables de la memoria, sustituyendo sus
     anteriores valores. Por lo tanto, en cada instante del proceso solo se
     dispone de la información del registro recién leído.
                                 Computacion - FA.CE.NA.
Estructuras de datos
7.3 Operaciones sobre archivos
     Fin de archivo
     Toda instrucción de ingreso de datos, ya sea
     desde teclado o desde un dispositivo magnético,
     requiere una condición de fin de ingreso de los       C om enzar

     datos, con el objeto de determinar cuando se han
     terminado los registros de un archivo o cuando ya
     no se desean ingresar mas datos desde el teclado.
     Esta condición la denominamos fin de archivo           In g re s a r
                                                             N O TA
     conocida como EOF (end of file).

     Para el ingreso de datos por teclado se prevee,
     generalmente la introducción de un valor elegido
     por el programador que será el indicador de que
                                                           N O TA = 11      N o
     ya no se ingresarán mas datos, por ejemplo si se
     introducen por teclado notas de los alumnos, el fin
     de datos estará dado por un valor que sea un                Si

     absurdo o datos que no existan en esa población,
                                                              P a ra r
     en este caso se podría tomar NOTA=11. El
     diagrama de la figura muestra lo mencionado.

                              Computacion - FA.CE.NA.
Estructuras de datos
7.3 Operaciones sobre archivos
     Fin de archivo
                                                          C om enzar
     Si los datos que se leen están soportados en
     un archivo y sobre el se realizan lecturas
     sucesivas, llegará un momento en que este
     se acabe; es decir ya no queden mas
     registros por leer. Esta situación la detecta el
     sistema después de una operación de lectura,             Leer
     cuando lo que se ha leído no es un registro          { lis ta d e
     de datos, sino lo que se conoce con el               cam pos}
     nombre de marca de fin de archivo. Por
     tanto, siempre que se ejecute una operación
     de lectura sobre un archivo secuencial, a
     continuación hay que preguntar si lo que se
     ha leído es la marca EOF o, por el contrario,
     un registro de datos para ejecutar las
     acciones pertinentes. El diagrama de flujo de          EO F         No

     la figura muestra el uso de la condición EOF.

                                                               Si



                                                            P a ra r
                                Computacion - FA.CE.NA.
                            .
Estructuras de datos
7.3 Operaciones sobre archivos
     Actualización
     La actualización de un archivo supone las siguientes
     operaciones:

        Añadir registros – ALTAS
        Modificar registros ya existentes – MODIFICACIONES
        Borrar registros – BAJAS


     El modo de operar la actualización varía       según    la
     organización y método de acceso del archivo.




                                   .
                         Computacion - FA.CE.NA.
Estructuras de datos
7.3 Operaciones sobre archivos
     Destrucción
     La operación de destrucción o borrado realiza la supresión del archivo
     en el soporte o dispositivo, dejando este espacio que ocupaba
     anteriormente disponible.




                                         .




                              Computacion - FA.CE.NA.
Estructura de datos
 7.4 Estructuras lineales y no lineales
       Cuando hablamos de Estructuras de Datos hacemos referencia a
       un conjunto de datos que poseen el mismo nombre,         que
       pueden ser caracterizados por su organización y por las
       operaciones que se definen en ella.
       Las Estructuras de Datos son muy importantes en los sistemas
       de computación y para explicar mas fácilmente veremos la
       siguiente clasificación la cual refleja el tipo de datos mas
       frecuentemente utilizados:



                                                           Entero
                                Estándar                   Real
            Datos Simples
                                                           Caracteres
                                                           Lógico
                                                           Vectores y Matrices
                                Estáticas                  Registros
                                                           Archivos
                                                                             Pilas
          Estructura de datos                       .      Lineales          Colas
                                Dinámicas                                    Listas Enlazadas

                                                           No lineales         Arboles
                                                                               Grafos


                                            Computacion - FA.CE.NA.
Estructura de datos
 7.4 Estructuras lineales y no lineales
       Las estructuras de datos estáticas son aquellas en las que el tamaño
       ocupado en memoria se define antes que el programa se ejecute y
       el mismo no puede ser modificado durante la ejecución. En cambio
       las estructuras de datos dinámicas no tienen limitaciones en cuanto
       al tamaño de memoria ocupada. Para utilizar este tipo de
       estructuras necesitamos usar un tipo de dato específico llamado
       puntero.

       Los tipos de datos que vimos hasta ahora son datos simples cuya
       característica común es que cada variable representa a un
       elemento; en cambio los tipos de datos estructurados tienen como
       particularidad que con un nombre o identificador se puede
       representar múltiples datos individuales y a su vez cada uno de
       estos puede ser referenciado independientemente.




                                          .
                                Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
           Concepto
       Arreglos se define como una colección                           finita,
       homogénea y ordenada de elementos.

       Finita: Todo arreglo tiene un límite, es decir, debe determinarse cual
       será el número máximo de elementos que podrán formar parte del
       arreglo.
       Homogénea: Todos los elementos de un arreglo son del mismo tipo
       o naturaleza (todos enteros, todos booleanos, etc.- ), pero nunca una
       combinación de distintos tipos.
       Ordenada: Se debe determinar cual es el primer elemento, el
       segundo, el tercero..... y el enésimo elemento.
                                            A R R E G L O




             1º E LE M E N T O   2º E LE M E N T O             N - E LE M E N T O


                                                 .
                                   Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
           Características
       Si un arreglo tiene la característica de que puede almacenar a N
       elementos del mismo tipo, deberá tener la posibilidad de permitir
       seleccionar a cada uno de ellos. Así se distinguen dos partes en los
       arreglos.
       ●
         Los componentes o elementos (valores que se almacenan en c/u de
       las casillas)
       ●
         Los índices (Permiten hacer referencia a los componentes)

       El número total de componentes (NTC) es igual al límite superior (LS)
       menos límite inferior (LI) mas 1
                                  NTC = LS - LI + 1
       El tipo de índice puede ser cualquier tipo ordinal (carácter, entero,
       enumerado)
       El tipo de los componentes puede ser cualquiera (entero, real, cadena
       de caracteres, registro, etc.)
       Se utilizan ( ) para indicar el índice de un arreglo. Entre los ( ) se
       debe escribir un valor ordinal (puede ser una variable, una constante
       o una expresión que dé como resultado un valor ordinal)

                                           .
                                Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
       Ejemplo
       Sea V un arreglo de 30 elementos enteros con índices enteros.
       V = (52,12,31,102,....75)
       V (50)= v(1), v(2), v(3),...., v(30),
       Su representación se muestra en la figura

                                      Componentes




           52         12         31                  102       .....    75


           1          2           3                        4    .....   30



                                           Indices

       Donde
           NTC = (30 – 1 + 1) = 30
           Cada componente del arreglo V será un número entero, y podrá
       accederse por medio de un índice que será un valor comprendido
       entre 1 y 30.

                                          .
                               Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
       En cuanto a las dimensiones los arreglos pueden ser:
        Unidimensional o vector: un solo índice
        Bidimensional o matriz: dos índices
        Multidimensional: mas de dos índices

                                              .




                               Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
            Diferencia con registros
        Las dos diferencias sustanciales entre arreglos y registro son:
        1) Un arreglo puede almacenar N elementos del mismo tipo,
        mientras que un registro puede almacenar N elementos de distintos
        tipos que se llaman campos.
        2) Los componentes de un arreglo se acceden por medio de índices,
        mientras que en un registro los campos se acceden por medio de su
        nombre, el cual es único.
        Un vector unidimensional, es el vector TEMPERATURA que contiene
        las temperaturas horarias registradas en una ciudad durante las 24
        horas del día. Este vector constará de 24 elementos del tipo real, ya
        que las temperaturas no serán enteras siempre.
        El valor mínimo del índice 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 este ejemplo el límite inferior es 1
        y el superior 24.

                  TEMPERATURA (I) donde 1 <= I <= 24

                                           .
                               Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
          Diferencia con registros
       Los vectores se almacenan en memoria central de la computadora en un
       orden adyacente.

       Así, un vector de cincuenta números denominado NUMEROS se
       representa físicamente por cincuenta posiciones de memoria sucesivas.
       Sea un vector X de ocho elementos:

       X[1] X[2]      X[3]   X[4]     X[5]       X[6]   X[7]   X[8]
       14.0 12.0      8.0    7.0      6.41       5.23   6.15   7.25

                                           .




                              Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
         Operaciones
     Podemos clasificar a las operaciones en las que intervienen arreglos de
     la siguiente manera:
           Lectura / escritura
           Recorrido
           Asignación
           Actualización (Añadir, eliminar, insertar)
           Ordenación
           Búsqueda




                                Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
            Operaciones:             Lectura / escritura

            El proceso de lectura /escritura de un arreglo se realiza de
              la siguiente manera:
        Leer V(i)             Lee todo el arreglo
        Escribir V(i)         Escribe todo el arreglo
        Leer V(3)             Lee el elemento 3 del arreglo

        Si se desea leer los 30 elementos de un vector en forma consecutiva
        se deberá hacer de la siguiente manera .
                                                                           Leer
                                                                           V(1)
              Leer   V(1)
              Leer   V(2)
              Leer   V(3)                                                  Leer
              Leer   V(..)                                                 V(2)

              Leer   V(.30)

                                                                 ..................




                                                                              Leer
                                                                             V(30)

                                Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
            Operaciones:                   Lectura / escritura
        Pero de esta forma resultaría poco práctico, por lo tanto debemos
        usar la siguiente notación para realizar la lectura / escritura de un
        arreglo.




                          Leer V(i)        i = 1 a 30




        Este proceso es válido también para escritura, simplemente se debe
        especificar dentro del símbolo la acción a realizar, en este caso
        Escribir V(i).




                                      Computacion - FA.CE.NA.
Estructura de datos
7.5 Arreglos
       Operaciones:            Recorrido
   Recorrer un vector significa acceder a todos y a cada uno de sus
   elementos desde el principio hasta el final o viceversa.
   Se puede acceder a los elementos de un vector para introducir datos
   (leer) en él o bien para ver su contenido (escribir). A la operación de
   acceder a todos los elementos para efectuar una acción determinada
   se denomina recorrido del vector. Esta operación se realiza usando
   estructuras repetitivas, cuya variable de control I, se utiliza como
   subíndice del vector (por ejemplo V(i). El incremento del contador del
   bucle producirá el tratamiento sucesivo de los elementos del vector.

   Esta operación es muy utilizada en este tipo de estructuras de datos,
   dado que cuando se está en presencia de un vector, el acceso a toda
   la información se realiza recorriéndolo. En algunos casos se puede
   acceder a un determinado elemento o a varios de ellos con ciertas
   características sin necesidad de recorrer todo el arreglo, por ejemplo
   acceder solo al último elemento que sabemos a priori posee la suma
   de los elementos anteriores.



                            Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
          Operaciones:           Recorrido
       Ejemplo                               C o m ie n z o


       Sumar los 30 elementos de un
       vector V.                            S U M A = 0




                                                 Leer
                                                 V ( i)            i = 1 a 30




                                                 I = 1




                                      S U M A = S U M A + V ( i)




                                                I = 30                  N o     I = I +1




                                                   S I



                                                P a ra r



                              Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
            Operaciones:             Asignacion
        En general no es posible asignar directamente un valor a todo el
        arreglo; se debe asignar el valor deseado a cada componente
        usando la instrucción de asignación, recordando que la asignación
        coloca el nuevo contenido en la variable destruyendo el valor
        anterior.

              15  V(20) o V(20) = 15 asigna el valor 15 al
               elemento                                   20 del
               vector V

        Si se quiere asignar valores a todos los componentes del vector, se
        debe recurrir a las estructuras repetitivas. Por ejemplo, si se desea
        poner en cero al vector V(30) la solución se muestra en la siguiente
        pantalla




                                Computacion - FA.CE.NA.
Estructura de datos
7.5 Arreglos
     Operaciones:           Asignacion
                                                    Comienzo



  También se puede asignar una
   variable tipo arreglo a otra
   exactamente del mismo tipo.
  A(I)  V(I) o V(I) = A(I)                            I=1




                                        V (i) = 0




                                                      I = 30   No   I = I +1




                                                          SI



                                                      Parar
                           Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
         Operaciones:            Actualizacion
     Muchas veces resulta interesante que dado un arreglo, puedan añadirse
     nuevos elementos o eliminar o insertar componentes. Estas resultan las
     tres operaciones elementales que se pueden realizar en un arreglo:
     añadir, eliminar e insertar elementos.

     Cuando se realiza una operación de añadir un nuevo elemento a
     continuación del último valor no nulo, la única condición necesaria para
     esta operación es comprobar que haya espacio para el nuevo elemento.




                                Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
                 Operaciones:       Actualizacion
         Ejemplo
         Dado un vector C de 8 elementos que contiene una nómina de 5
         direcciones de correo ordenadas alfabéticamente. Se desea añadir la
         dirección valeria@server.com



           alicia@server.com        alicia@server.com                     Comenzar
     1                                                  1

     2    castor@server.com        castor@server.com    2


     3    daniel@server.com        daniel@server.com    3
                                                                                 C(I)             I=1a8
     4    marta@server.com          marta@server.com    4


     5     sonia@server.com         sonia@server.com    5


     6                             valeria@server.com   6   C(6) = "valeria@server.com"



     7                                                  7


     8                                                  8                                 Parar
                                 Computacion - FA.CE.NA.
Estructura de datos
7.5 Arreglos
        Operaciones:             Actualizacion
    Con la simple instrucción de asignación se añaden los elementos.
    Insertar un elemento es una operación que consiste en introducir
    dicho elemento en el interior del vector, en una posición I dada, de
    forma tal que los elementos ubicados en las siguientes posiciones
    sean desplazados a las posiciones I + 1 respectivas.

    La operación de eliminar un elemento al final del arreglo no
    presenta ningún problema; en cambio, si el borrado se realiza en el
    interior del mismo esto provoca el efecto contrario al de insertar, el
    movimiento deberá ser hacia arriba (I-1) de los elementos inferiores
    a él para reorganizar el vector.




                            Computacion - FA.CE.NA.
Estructura de datos
7.5 Arreglos
       Operaciones:                                        Actualizacion
  Ejemplo
  Tomamos el vector C del ejemplo anterior, pero en este caso se desea
  eliminar del arreglo el elemento 4.

         a lic ia @ s e r v e r .c o m       a lic ia @ s e r v e r .c o m         C o m e n za r
   1                                                                           1

   2    c a s to r@ s e rv e r.c o m        c a s to r@ s e rv e r.c o m       2


   3     d a n ie l@ s e r v e r .c o m     d a n ie l@ s e r v e r.c o m      3
                                                                                       C (I)           I = 1 a 8
   4     m a r ta @ s e rv e r.c o m       p a s c u a l@ s e r v e r .c o m   4


   5   p a s c u a l@ s e r v e r .c o m    s o n ia @ s e r v e r . c o m     5


   6     s o n ia @ s e r v e r .c o m     v a le r ia @ s e r v e r .c o m    6        I = 4


   7   v a le r ia @ s e r v e r.c o m                                         7


   8                                                                           8   C (I) = C (I+ 1 )




                                                                                        I = 8                 N o   I = I + 1




                                                                                          S i



                                                                                       P a ra r




                                                        Computacion - FA.CE.NA.
Estructura de datos
7.5 Arreglos
     Operaciones:           Bùsqueda
  Consiste en encontrar elemento/s dentro de un arreglo
  Ejemplo
  Dado un arreglo A de 100 elementos, averiguar e informar cuantos
  elementos nulos posee. Imprimir el arreglo.

  Pseudocódigo
                                                     Inicio




  Comenzar
                                            0 --> NULOS




  NULOS = 0                                          Leer
                                                      A (I)
                                                  I=1,100


  Leer A(I)
                                                                                                             Averigua si el
                                                                                                         elemento es cero


          Para I desde 1 hasta 100
                                                    1 --> I




          Si A(I) = 0                             A(I) = 0    Si   NULOS = NULOS + 1




  entonces NULOS = NULOS + 1
                                                        No




        fin_si                                     I = 100    No               I =I+1




       fin_para                                          Si                     Termina de recorrer el
                                                                                   vector e informa el


  Imprimir “Total nulos” NULOS
                                                                                   total de elementos
                                         "Total de nulos "                          nulos encontrados
                                                   NULOS




  Imprimir “Vector “ A(I)                                                         Imprime el vector de
                                                                                          una sola vez
                                               "Vector A"


  Parar
                                             A(I) I= 1,100




                                                       Fin

                           Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
            Arreglos bidimensionales: Matrices
        Un arreglo de dos dimensiones, también denominada matriz, se
        define como una tabla de tablas, o vector de vectores, es decir, es
        aquella en la cual uno de sus elementos es, a su vez, una tabla
        unidimensional.
        Podemos comparar una matriz con una hoja de papel cuadriculado
        en la que cada cuadrícula corresponderá a un elemento.
                        Columna 1    Columna 2    Columna 3        Columna 4



               Fila 1




               Fila 2                                         12




               Fila 3



                                    Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
                   Arreglos bidimensionales: Matrices
              Un arreglo de dos dimensiones, también denominada matriz, se
              define como una tabla de tablas, o vector de vectores, es decir, es
              aquella en la cual uno de sus elementos es, a su vez, una tabla
              unidimensional.
              Podemos comparar una matriz con una hoja de papel cuadriculado en
              la que cada cuadrícula corresponderá a un elemento.

                Columna 1   Columna 2    Columna 3        Columna 4


                                                                      En este gráfico podemos
     Fila 1                                                           observar que cada fila está
                                                                      dividida en varias columnas. Por
                                                                      lo tanto, para poder referenciar
                                                                      un elemento de la matriz, hay
                                                                      que especificar el nombre de la
     Fila 2                                          12               misma (igual que con los
                                                                      vectores) y, entre paréntesis,
                                                                      dos subíndices separados por
                                                                      coma; el primero indicará la fila
                                                                      en la que se encuentra el
     Fila 3                                                           elemento y el segundo la
                                                                      columna.
                                        Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
           Arreglos bidimensionales: Matrices
       Por lo tanto, si suponemos que la matriz representada se llama MAT,
       el casillero con el número 12 corresponderá al elemento ubicado en la
       fila 2 columna 3 y se lo representa como MAT(2,3). Si generalizamos,
       MAT(i,j) sería el elemento correspondiente a la fila i columna j.
       El caso anterior, representado en forma matricial sería como muestra
       la figura.
                                                Donde la matriz llamada MAT tiene filas que
                                                varían de 1 a 3 y columnas que varían de 1 a 4,
                                                por lo tanto diremos que la matriz MAT tiene 3 x
            1      2         3         4
                                                4 elementos.
                                                      I = 1...3
                                                      J = 1....4
       1
                                                Si generalizamos el rango, resultaría:
                                                      I = 1...M
                                                      J = 1....N
                                                Y diremos que la matriz MAT tiene M x N
       2                  MAT(I,J)
                                                elementos. Existen N elementos en cada fila y
                                                M elementos en cada columna.
                                                El resultado de multiplicar la cantidad de filas
       3
                                                por cantidad de columnas es el tamaño de la
                                                matriz. En nuestro ejemplo anterior el tamaño
                                                es de 12 (3 x 4).
                                     Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
           Recorrido de una matriz
       Como vimos anteriormente, recorrer una tabla de dos dimensiones
       significa acceder a todos y a cada uno de sus elementos. Este proceso
       de recorrer la matriz se llevará a cabo mediante la estructura
       repetitiva anidada.
       El recorrido de los elementos de la matriz se puede realizar por fila o
       por columna (ver figura) . Para recorrer por fila la matriz MAT se debe
       realizar dos estructuras repetitivas anidadas. En la primera de ellas
       (las mas externa) se realizan tres iteraciones para recorrer las 3 filas.
       En cada una de esas iteraciones, se realizará a su vez 4 iteraciones
       para recorrer los 4 elementos de cada fila (uno por cada columna).




                  Sentido en que se                                 Sentido en se recorre
              recorre una matriz por                                       una matriz por
                                   fila   Computacion - FA.CE.NA.                columna
Estructura de datos
       7.5 Arreglos
                   Ejemplo
                   Supongamos que tenemos una matriz que contiene de los doce
                   meses del año las 4 temperaturas máximas de cada mes
                   T(12,4) y se desea imprimir los datos.
                   T e m p e ra tu ra      T e m p e ra tu ra       T e m p e ra tu ra       T e m p e ra tu ra
                       M á x im a              M á x im a               M á x im a               M á x im a        Si deseamos imprimir los datos por mes (fila
                            1                       2                        3                        4            de la matriz) debemos recorrer la misma por
       01                                                                                                          fila de forma tal que por cada fila debemos
    e n e ro
                                                                                                                   recorrer las 4 columnas de la misma. Pero
                          30                       31                       33                       30
                                                                                                                   como la matriz tiene 12 filas, este proceso se
                                                                                                                   repite 12 veces – uno por cada fila – y de
       02                                                                                                          esta manera formamos dos ciclos anidados.
   fe b re ro                                                                                                      Uno mas externo – fila - que se repite 12
                          29                       31                       30                       30            veces y uno mas interno – columna – que por
                                                                                                                   cada fila se repite 4 veces.
     03
   m a rz o
                          22                       24                       24                       23



       04
     a b ril
                          25                       23                       24                       24                                             POR CADA FILA DEBO
                                                                                                                                                    RECORRER LAS
                                                                                                                            12 FILAS   4 COLUMNAS
                                                                                                                                                    CUATRO COLUMNAS
                    ............... ........................ ............................ ......................
                                                                                                                                                    DE LA MATRIZ
       12
 d ic ie m b r e
                          28                       26                       29                       30




                                                                                              Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
     Entonces, recorrer esta matriz para imprimirla consistirá en:
     Posicionarse en la primer fila (I=1) y recorrer todas sus columnas
     (desde J=1 hasta J=4).
     Posicionarse en la segunda fila (I=2) y volver a recorrer, nuevamente,
     todas sus columnas (desde J=1 hasta J=4).
     Repetir estas operaciones para cada valor de I hasta que se hayan
     realizado para la última fila, es decir para I=12.
                        T e m p e ra tu ra      T e m p e ra tu ra       T e m p e ra tu ra       T e m p e ra tu ra
                            M á x im a              M á x im a               M á x im a               M á x im a
                                1                        2                        3                        4
             01
          e n e ro
                               30                       31                       33                       30



             02
         fe b re ro
                               29                       31                       30                       30



           03
         m a rz o
                               22                       24                       24                       23



             04
           a b ril
                               25                       23                       24                       24



                         ............... ........................ ............................ ......................
             12
       d ic ie m b re
                               28                       26                       29                       30




                                                                                              Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
       El Pseudocódigo y diagrama de flujo correspondientes para recorrer e
       imprimir la matriz T(12,4) sería:                                    C O M E N Z A R




       Comenzar
         Para I = 1 a 12
                                                                                T (I , J )
                                                                               I = 1 ,1 2
                                                                                J = 1 ,4

                      Para J = 1 a 4
             Imprimir T(I,J)                                                     I = 1

                      Fin_para
         Fin_para
         Parar
                                                                                 J = 1




                                                                                T (I,J )
                                                            c ic lo d e J

                                            c ic lo d e I




                                                                                 J = 4        N o   J = J + 1




                                                                                   S i




                                                                                 I = 4        N o   I = I + 1




                                                                                   S i



                                                                               P A R A R

                               Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
       Del mismo modo, si deseamos recorrer una matriz por
       columna se debe para cada columna recorrer todas sus filas,
       en este caso 12.
       El pseudocódigo se transformaría en:                       comienzo




         Comenzar                                                    T(I , J)
                                                                   I = 1,12


          Para J = 1 a 4
                                                                    J = 1,4




            Para I = 1 a 12
              Imprimir T(I,J)
                                                                      J=1




            Fin_para
          Fin_para
                                                                       I=1




          Parar
                                                                      T(I,J)
                                                     ciclo de I

                                        ciclo de J




                                                                     I = 12     No   I =I +1




                                                                           Si




                                                                      J=4       No   J=J+1




                                                                           Si



                                                                      parar
                             Computacion - FA.CE.NA.
Estructura de datos
   7.5 Arreglos
                                       Es importante observar que la única variación entre estas
                                       dos resoluciones es el intercambio de los subíndices en
                                       las estructuras repetitivas, y lo que permanece invariable,
                                       sin embargo, es el orden de los mismos durante la
                                       impresión.
                                                                                                                               comienzo
                                           C O M E N Z A R




                                                                                                                                  T(I , J)
                                               T (I , J )                                                                       I = 1,12
                                              I = 1 ,1 2                                                                         J = 1,4
                                               J = 1 ,4




                                                                                                                                   J=1
                                                I = 1




                                                                                                                                    I=1
                                                J = 1




                                                                                                                                   T(I,J)
                                                                                                                 cic lo de I
                                               T (I,J )
                     c ic lo d e   J                                                               cic lo de J

     c ic lo d e I




                                                                                                                                  I = 12     No   I=I+1

                                                J = 4        N o   J = J + 1

                                                                                                                                        Si


                                                  S i


                                                                                                                                   J=4       No   J=J+1

                                                I = 4        N o   I = I + 1

                                                                                                                                        Si


                                                  S i
                                                                                                                                   parar

                                              P A R A R

                                                                               Computacion - FA.CE.NA.

More Related Content

What's hot

Lina marcela alzate, stephany aristizabal introducción a las bases de datos 1...
Lina marcela alzate, stephany aristizabal introducción a las bases de datos 1...Lina marcela alzate, stephany aristizabal introducción a las bases de datos 1...
Lina marcela alzate, stephany aristizabal introducción a las bases de datos 1...Lina Marcela
 
Glosario base de datos
Glosario base de datosGlosario base de datos
Glosario base de datososmerisanchez
 
Procesamiento de datos
Procesamiento de datosProcesamiento de datos
Procesamiento de datosyandismedina
 
Trabajo definitivo 2
Trabajo definitivo 2Trabajo definitivo 2
Trabajo definitivo 2carmen-boada
 
Modelo de base de datos orientados a objetos
Modelo de base de datos orientados a objetosModelo de base de datos orientados a objetos
Modelo de base de datos orientados a objetosarmin tilano
 
Trabajo alejandro empresarial
Trabajo alejandro empresarialTrabajo alejandro empresarial
Trabajo alejandro empresarialAlejito Parrado
 
Eje tematico 5
Eje tematico 5Eje tematico 5
Eje tematico 5Angie2222
 
Introducción a las bases de datos nataly muñoz y sara ocampo 11-2
Introducción a las bases de datos  nataly muñoz y sara ocampo 11-2Introducción a las bases de datos  nataly muñoz y sara ocampo 11-2
Introducción a las bases de datos nataly muñoz y sara ocampo 11-2Sara Sandoval
 
Introducción a las bases de datos por nataly muñoz y sara ocampo 11-2
Introducción a las bases de datos por nataly muñoz y sara ocampo 11-2Introducción a las bases de datos por nataly muñoz y sara ocampo 11-2
Introducción a las bases de datos por nataly muñoz y sara ocampo 11-2Sara Sandoval
 
Trabajo definitivo 2
Trabajo definitivo 2Trabajo definitivo 2
Trabajo definitivo 2Carmen Boada
 

What's hot (20)

Diapositivas De Tablas y Base Datos
Diapositivas De Tablas y Base DatosDiapositivas De Tablas y Base Datos
Diapositivas De Tablas y Base Datos
 
Base de datos yanna
Base de datos yannaBase de datos yanna
Base de datos yanna
 
Base de datos felipe
Base de datos felipeBase de datos felipe
Base de datos felipe
 
Lina marcela alzate, stephany aristizabal introducción a las bases de datos 1...
Lina marcela alzate, stephany aristizabal introducción a las bases de datos 1...Lina marcela alzate, stephany aristizabal introducción a las bases de datos 1...
Lina marcela alzate, stephany aristizabal introducción a las bases de datos 1...
 
Glosario base de datos
Glosario base de datosGlosario base de datos
Glosario base de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base
BaseBase
Base
 
Procesamiento de datos
Procesamiento de datosProcesamiento de datos
Procesamiento de datos
 
Trabajo definitivo 2
Trabajo definitivo 2Trabajo definitivo 2
Trabajo definitivo 2
 
Modelo de base de datos orientados a objetos
Modelo de base de datos orientados a objetosModelo de base de datos orientados a objetos
Modelo de base de datos orientados a objetos
 
Actualizacion
ActualizacionActualizacion
Actualizacion
 
Base de datos
Base de datosBase de datos
Base de datos
 
Actualización
Actualización Actualización
Actualización
 
Trabajo alejandro empresarial
Trabajo alejandro empresarialTrabajo alejandro empresarial
Trabajo alejandro empresarial
 
Base de datos
Base de datosBase de datos
Base de datos
 
Eje tematico 5
Eje tematico 5Eje tematico 5
Eje tematico 5
 
Introducción a las bases de datos nataly muñoz y sara ocampo 11-2
Introducción a las bases de datos  nataly muñoz y sara ocampo 11-2Introducción a las bases de datos  nataly muñoz y sara ocampo 11-2
Introducción a las bases de datos nataly muñoz y sara ocampo 11-2
 
Introducción a las bases de datos por nataly muñoz y sara ocampo 11-2
Introducción a las bases de datos por nataly muñoz y sara ocampo 11-2Introducción a las bases de datos por nataly muñoz y sara ocampo 11-2
Introducción a las bases de datos por nataly muñoz y sara ocampo 11-2
 
Trabajo definitivo 2
Trabajo definitivo 2Trabajo definitivo 2
Trabajo definitivo 2
 

Viewers also liked

Train the Trainer Ausbildung Zertifizierung sportliche Seminar Methoden >> mi...
Train the Trainer Ausbildung Zertifizierung sportliche Seminar Methoden >> mi...Train the Trainer Ausbildung Zertifizierung sportliche Seminar Methoden >> mi...
Train the Trainer Ausbildung Zertifizierung sportliche Seminar Methoden >> mi...Matthias Dittrich
 
Como compartir en línea documentos de word
Como compartir en línea documentos de wordComo compartir en línea documentos de word
Como compartir en línea documentos de wordAdrián Mh
 
Vollmer l&l 107 2012 interview mit daniel bannasch
Vollmer l&l 107 2012 interview mit daniel bannaschVollmer l&l 107 2012 interview mit daniel bannasch
Vollmer l&l 107 2012 interview mit daniel bannaschmetropolsolar
 
Vigorexia desde la psicologia cognitiva
Vigorexia desde la psicologia cognitivaVigorexia desde la psicologia cognitiva
Vigorexia desde la psicologia cognitivafercho_rios
 
Implementación de ieee 802.11 en enlaces largos para zonas rurales aisladas
Implementación de ieee 802.11 en enlaces largos para zonas rurales aisladasImplementación de ieee 802.11 en enlaces largos para zonas rurales aisladas
Implementación de ieee 802.11 en enlaces largos para zonas rurales aisladasDavid Vasco
 
Programa de-nuevas-tecnologias-en-educacion-actualizacion-01022013
Programa de-nuevas-tecnologias-en-educacion-actualizacion-01022013Programa de-nuevas-tecnologias-en-educacion-actualizacion-01022013
Programa de-nuevas-tecnologias-en-educacion-actualizacion-01022013mariifeerii
 
Social Media Guidelines in der Hotellerie
Social Media Guidelines in der HotellerieSocial Media Guidelines in der Hotellerie
Social Media Guidelines in der HotellerieMiranda Meier
 
Dinner Parlamentarische Gruppe Digitale Nachhaltigkeit 21. September 2009, Ho...
Dinner Parlamentarische Gruppe Digitale Nachhaltigkeit 21. September 2009, Ho...Dinner Parlamentarische Gruppe Digitale Nachhaltigkeit 21. September 2009, Ho...
Dinner Parlamentarische Gruppe Digitale Nachhaltigkeit 21. September 2009, Ho...Swiss Open Systems User Group /ch/open
 
Stabi Jahresbericht 2010
Stabi Jahresbericht 2010Stabi Jahresbericht 2010
Stabi Jahresbericht 2010stabihh
 
Energieforschungskonzept
EnergieforschungskonzeptEnergieforschungskonzept
Energieforschungskonzeptmetropolsolar
 
30 09-2010 stuttgart
30 09-2010 stuttgart30 09-2010 stuttgart
30 09-2010 stuttgartjokerline
 
Die Umwandlung von RGB zu CMYK mit Gimp
Die Umwandlung von RGB zu CMYK mit GimpDie Umwandlung von RGB zu CMYK mit Gimp
Die Umwandlung von RGB zu CMYK mit Gimpsaxoprint
 
Impuls Mittelschule - Input Wampfler
Impuls Mittelschule - Input WampflerImpuls Mittelschule - Input Wampfler
Impuls Mittelschule - Input WampflerPhilippe Wampfler
 
Präsentation Fachdidaktik Deutsch I, 2. Teil
Präsentation Fachdidaktik Deutsch I, 2. TeilPräsentation Fachdidaktik Deutsch I, 2. Teil
Präsentation Fachdidaktik Deutsch I, 2. TeilPhilippe Wampfler
 
FHSG - Bildung und Social Media
FHSG - Bildung und Social MediaFHSG - Bildung und Social Media
FHSG - Bildung und Social MediaPhilippe Wampfler
 

Viewers also liked (20)

Train the Trainer Ausbildung Zertifizierung sportliche Seminar Methoden >> mi...
Train the Trainer Ausbildung Zertifizierung sportliche Seminar Methoden >> mi...Train the Trainer Ausbildung Zertifizierung sportliche Seminar Methoden >> mi...
Train the Trainer Ausbildung Zertifizierung sportliche Seminar Methoden >> mi...
 
Como compartir en línea documentos de word
Como compartir en línea documentos de wordComo compartir en línea documentos de word
Como compartir en línea documentos de word
 
Vollmer l&l 107 2012 interview mit daniel bannasch
Vollmer l&l 107 2012 interview mit daniel bannaschVollmer l&l 107 2012 interview mit daniel bannasch
Vollmer l&l 107 2012 interview mit daniel bannasch
 
Vigorexia desde la psicologia cognitiva
Vigorexia desde la psicologia cognitivaVigorexia desde la psicologia cognitiva
Vigorexia desde la psicologia cognitiva
 
Amistad
AmistadAmistad
Amistad
 
Implementación de ieee 802.11 en enlaces largos para zonas rurales aisladas
Implementación de ieee 802.11 en enlaces largos para zonas rurales aisladasImplementación de ieee 802.11 en enlaces largos para zonas rurales aisladas
Implementación de ieee 802.11 en enlaces largos para zonas rurales aisladas
 
Programa de-nuevas-tecnologias-en-educacion-actualizacion-01022013
Programa de-nuevas-tecnologias-en-educacion-actualizacion-01022013Programa de-nuevas-tecnologias-en-educacion-actualizacion-01022013
Programa de-nuevas-tecnologias-en-educacion-actualizacion-01022013
 
Social Media Guidelines in der Hotellerie
Social Media Guidelines in der HotellerieSocial Media Guidelines in der Hotellerie
Social Media Guidelines in der Hotellerie
 
Dinner Parlamentarische Gruppe Digitale Nachhaltigkeit 21. September 2009, Ho...
Dinner Parlamentarische Gruppe Digitale Nachhaltigkeit 21. September 2009, Ho...Dinner Parlamentarische Gruppe Digitale Nachhaltigkeit 21. September 2009, Ho...
Dinner Parlamentarische Gruppe Digitale Nachhaltigkeit 21. September 2009, Ho...
 
11122_muv101_0216
11122_muv101_021611122_muv101_0216
11122_muv101_0216
 
¡Lanzar tu sitio con Jetpack!
¡Lanzar tu sitio con Jetpack!¡Lanzar tu sitio con Jetpack!
¡Lanzar tu sitio con Jetpack!
 
Stabi Jahresbericht 2010
Stabi Jahresbericht 2010Stabi Jahresbericht 2010
Stabi Jahresbericht 2010
 
Energieforschungskonzept
EnergieforschungskonzeptEnergieforschungskonzept
Energieforschungskonzept
 
Verlauf
VerlaufVerlauf
Verlauf
 
30 09-2010 stuttgart
30 09-2010 stuttgart30 09-2010 stuttgart
30 09-2010 stuttgart
 
El perro atado.
El perro atado.El perro atado.
El perro atado.
 
Die Umwandlung von RGB zu CMYK mit Gimp
Die Umwandlung von RGB zu CMYK mit GimpDie Umwandlung von RGB zu CMYK mit Gimp
Die Umwandlung von RGB zu CMYK mit Gimp
 
Impuls Mittelschule - Input Wampfler
Impuls Mittelschule - Input WampflerImpuls Mittelschule - Input Wampfler
Impuls Mittelschule - Input Wampfler
 
Präsentation Fachdidaktik Deutsch I, 2. Teil
Präsentation Fachdidaktik Deutsch I, 2. TeilPräsentation Fachdidaktik Deutsch I, 2. Teil
Präsentation Fachdidaktik Deutsch I, 2. Teil
 
FHSG - Bildung und Social Media
FHSG - Bildung und Social MediaFHSG - Bildung und Social Media
FHSG - Bildung und Social Media
 

Similar to Estructuras

Similar to Estructuras (20)

Estructura de datos.ppt
Estructura de datos.pptEstructura de datos.ppt
Estructura de datos.ppt
 
Sesion01EDx.pptx
Sesion01EDx.pptxSesion01EDx.pptx
Sesion01EDx.pptx
 
Base de datos
Base de datosBase de datos
Base de datos
 
Archivos y bases de datos.
Archivos y bases de datos.Archivos y bases de datos.
Archivos y bases de datos.
 
Presentacion diseño de archivos
Presentacion diseño de archivosPresentacion diseño de archivos
Presentacion diseño de archivos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos carolina
Base de datos carolinaBase de datos carolina
Base de datos carolina
 
Introduccion base de datos
Introduccion base de datosIntroduccion base de datos
Introduccion base de datos
 
Diapositivas base de datos
Diapositivas base de datosDiapositivas base de datos
Diapositivas base de datos
 
Taller base de datos informatica medica
Taller base de datos informatica medicaTaller base de datos informatica medica
Taller base de datos informatica medica
 
CONCEPTOS DE BASES DE DATOS.pptx
CONCEPTOS DE BASES DE DATOS.pptxCONCEPTOS DE BASES DE DATOS.pptx
CONCEPTOS DE BASES DE DATOS.pptx
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Conceptos básicos db
Conceptos básicos dbConceptos básicos db
Conceptos básicos db
 
Conceptos básicos
Conceptos básicosConceptos básicos
Conceptos básicos
 
informatica3.pdf
informatica3.pdfinformatica3.pdf
informatica3.pdf
 
ACTIVIDAD DIAPOSITIVAS.pptx
ACTIVIDAD DIAPOSITIVAS.pptxACTIVIDAD DIAPOSITIVAS.pptx
ACTIVIDAD DIAPOSITIVAS.pptx
 
ACTIVIDAD DIAPOSITIVAS 1.pptx
ACTIVIDAD DIAPOSITIVAS 1.pptxACTIVIDAD DIAPOSITIVAS 1.pptx
ACTIVIDAD DIAPOSITIVAS 1.pptx
 
Concepto de base de datos
Concepto de base de datosConcepto de base de datos
Concepto de base de datos
 

Recently uploaded

PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxlupitavic
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...JAVIER SOLIS NOYOLA
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
PIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesPIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesYanirisBarcelDelaHoz
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICAÁngel Encinas
 
actividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoactividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoJosDanielEstradaHern
 

Recently uploaded (20)

PLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docxPLAN DE REFUERZO ESCOLAR primaria (1).docx
PLAN DE REFUERZO ESCOLAR primaria (1).docx
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
PIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonablesPIAR v 015. 2024 Plan Individual de ajustes razonables
PIAR v 015. 2024 Plan Individual de ajustes razonables
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
actividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° gradoactividades comprensión lectora para 3° grado
actividades comprensión lectora para 3° grado
 

Estructuras

  • 1. Tema 7 Estructuras de datos Computacion - FA.CE.NA.
  • 2. Estructuras de datos TEMA 7 Estructura de datos. Campo, registro, archivos y base de datos. Operaciones. Estructuras lineales (Arreglos). Operaciones. Computacion - FA.CE.NA.
  • 3. Estructuras de datos 7.1 Estructura de datos. Concepto En todos los tiempos y más aún en la era en que vivimos, el hombre tiene cada vez mas necesidad de consultar una mayor cantidad de información para poder desarrollar sus actividades. El gran cúmulo de información ha hecho necesario que ésta tenga que ser almacenada y organizada correctamente para acceder a ella rápidamente. Según lo visto hasta el momento, la única forma que tiene el ordenador de almacenar la información es mediante variables, que no son mas que porciones de la memoria central del mismo. Pero al ser la memoria central un conjunto de dispositivos electrónicos que funcionan mediante la alimentación eléctrica, cuando se apaga el ordenador, toda la información que había en su memoria central desaparece. Computacion - FA.CE.NA.
  • 4. Estructuras de datos 7.1 Estructura de datos. Concepto Por lo tanto, para poder acceder a determinada información en cualquier momento, se necesitará que ella esté depositada en soportes físicos los cuales la almacenan en forma permanente. Este es el caso de la memoria externa o auxiliar como ser disquete, disco duro, cinta magnética, etc.-, en las cuales sin necesidad de estar conectadas a la corriente eléctrica, la información permanece allí. La forma de guardar los datos en estos dispositivos auxiliares es mediante unas estructuras llamadas archivos o ficheros. Además, existe una gran diferencia en cuanto a capacidad de almacenamiento entre la memoria central y las auxiliares, en general la capacidad de las últimas es muy superior. Computacion - FA.CE.NA.
  • 5. Estructuras de datos 7.1 Estructura de datos. Concepto Conociendo esto, podríamos comparar la memoria central con la memoria humana y una memoria auxiliar con una guía de teléfonos. El hecho de llamar por teléfono a una determinada persona es mucho más rápido si sabemos su número de memoria (el número está dentro de la memoria). Es también casi impensable que el hombre retenga en su memoria todos los números de teléfono de la guía (memoria central), para ello se recurre a una memoria externa que es la guía telefónica. Entonces, cuando deseamos llamar a una persona de la cual desconocemos su número, lo buscamos en la guía; una vez localizado, lo retenemos en la memoria (la información pasa de la memoria auxiliar a la memoria central) y realizamos la acción de marcar el número. Computacion - FA.CE.NA.
  • 6. Estructuras de datos 7.1 Estructura de datos. Concepto Si comprendimos este caso, podríamos decir que en un ordenador la información de entrada de la que se parte para su tratamiento se va a obtener de dispositivos externos, desde los que la va a introducir en su memoria central a través de variables. A partir de aquí trabajará con estas variables, y la información de salida que obtenga la guardará nuevamente en los soportes de almacenamiento externos. Anteriormente se nombró la palabra archivo, la cual es de entender que no es un término puramente informático, y para comprender este significado podemos comparar con hechos de la vida cotidiana. Por ejemplo cuando concurrimos a una biblioteca a pedir un libro prestado, el encargado consulta su archivo de libros; si trabajamos en alguna empresa, nuestros datos estarán registrados en un archivo de empleados, etc.- Entonces vemos que al menos todos tenemos de alguna manera intuitiva el concepto de lo que significa archivo o fichero. A continuación veremos algunas definiciones que están básicamente relacionados con este concepto. Computacion - FA.CE.NA.
  • 7. Estructuras de datos 7.1 Estructura de datos. Concepto 7.1.1 Campo Un campo es un conjunto de caracteres capaz de suministrar una determinada información referida a un concepto. Un campo es un elemento de datos elementales tales como nombre y apellido, numero de documento, domicilio, etc.- Al igual que en las variables, al definir un campo hay que indicar claramente sus tres características: Nombre: Nombre que identifica a ese conjunto de caracteres Tipo: Tipo de caracteres que puede contener (alfabético, entero, etc.-) Tamaño: Cantidad de caracteres que puede contener Por ejemplo, si tenemos que definir al campo número de documento resultaría: Nombre: documento Tipo: numérico Tamaño: 8 enteros Un campo es la entidad lógica más pequeña, consiste en un conjunto de byte que conforman un dato. Un campo es la unidad mínima de información de un registro. Computacion - FA.CE.NA.
  • 8. Estructuras de datos 7.1 Estructura de datos. Concepto 7.1.2 Registros Un registro es un conjunto de campos referentes a una entidad en particular y constituyen una unidad para su proceso. Un ejemplo de un registro puede ser la información de un determinado alumno universitario, que contiene los campos: libreta universitaria, apellido y nombre, número de documento, domicilio, fecha de nacimiento, entre otros campos. La figura muestra un ejemplo gráfico de registro. libreta universitaria Apellido y nombre número de documento Domicilio Fecha de nacimiento Computacion - FA.CE.NA.
  • 9. Estructuras de datos 7.1 Estructura de datos. Concepto 7.1.3 Archivos Es el conjunto de registros homogéneos referidos a objetos de la misma naturaleza o del mismo tipo, almacenados en un soporte externo, que presenta entre sí una relación lógica y que pueden ser consultados individualmente de forma iterativa o sistemática. Tomando el ejemplo anterior, podemos decir que habrá un registro por alumno, y habrá tantos registros como alumnos haya. Este conjunto de registros de alumnos formará un archivo y lo vemos gráficamente en la figura. libreta universitaria Apellido y nombre número de documento Domicilio Fecha de nacimiento Computacion - FA.CE.NA.
  • 10. Estructuras de datos 7.1 Estructura de datos. Concepto 7.1.3 Archivos Un archivo en una computadora es una estructura diseñada para contener datos, estos están organizados de forma tal que pueden ser recuperados fácilmente, borrados, actualizados, etc.- Al hablar de archivo es imprescindible que cada uno de ellos tenga un nombre para poder identificarlo. En este caso podría ser un nombre apropiado: ESTUDIANTES. En resumen, podríamos decir que un archivo está formado por un conjunto de registros, y estos a su vez por un conjunto de campos. Registro 1 Registro 2 Archivo Registro n Computacion - FA.CE.NA.
  • 11. Estructuras de datos 7.1 Estructura de datos. Concepto 7.1.4 Base de Datos Es una colección de archivos relacionados lógicamente, que se estructura en diferentes formas para reducir duplicaciones y proporcionar un mejor acceso a los datos. Constituye el nivel mas alto en la jerarquía de organización de los datos, siendo el nivel mas bajo el carácter. Así una base de datos de una universidad podría contener archivos de estudiantes, profesores, inventarios, libros, etc. La figura presenta gráficamente la estructura jerárquica en base de datos. . Computacion - FA.CE.NA.
  • 12. Estructuras de datos 7.1 Estructura de datos. Concepto 7.1.4 Base de Datos Base de datos . Archivo Archivo Archivo Registro Registro Registro Registro Campo Campo Campo Campo Campo Caracter Caracter Caracter Caracter Caracter Computacion - FA.CE.NA.
  • 13. Estructuras de datos 7.2 Conceptos 7.2.1 Campo Clave Un campo clave (key) es aquel que identifica al registro y lo diferencia de los otros registros. Debe ser UNICO, es decir debe ser diferente para cada registro. De todos los campos o datos siempre se elige a uno como campo clave. Por ejemplo, en el registro mostrado en la figura el campo clave podría ser libreta universitaria . libreta universitaria Apellido y nombre número de documento Domicilio Fecha de nacimiento Computacion - FA.CE.NA.
  • 14. Estructuras de datos 7.2 Conceptos 7.2.2 Registro lógico Se denomina registro lógico al conjunto de campos o datos referente a un mismo objeto y constituyen una unidad para su proceso. Son los registros organizados en campos 7.2.3 Registro físico Registro físico es un conjunto de registros lógicos que constituyen la unidad de transferencia en una sola operación de entrada / salida (para transferencias entre las unidades de E/S o dispositivos de almacenamiento, y la memoria principal). . Computacion - FA.CE.NA.
  • 15. Estructuras de datos 7.3 Operaciones sobre archivos Creación Apertura Cierre Lectura / Consulta Fin de Archivo Actualización Destrucción . Computacion - FA.CE.NA.
  • 16. Estructuras de datos 7.3 Operaciones sobre archivos Creación Es la primera operación que se hará con un archivo y es la operación mediante la cual se introduce la información correspondiente al archivo en un soporte de almacenamiento de datos. Para poder utilizar un archivo, este debe existir, es decir, es necesario que se haya creado previamente. La creación exige organización, estructura, localización o reserva de espacio en el soporte de almacenamiento. En un entorno de computadoras, durante la creación es necesario darle una serie de datos: Nombre del dispositivo, nombre de archivo, tamaño, organización, etc.- Al momento de la creación puede suceder que sea creado por primera vez en un soporte determinado, proceder de otro que ya existe, ser el resultado de un cálculo, condición, etc.- o ambas cosas a la vez. Computacion . FA.CE.NA. -
  • 17. Estructuras de datos 7.3 Operaciones sobre archivos Apertura Abrir un archivo significa dejarlo dispuesto para ser utilizado. Todos los archivos que se ocupan en un programa deben ser abiertos previamente a su uso. Un archivo que se pretende usar debió haber sido creado previamente, he aquí la diferencia entre estas dos operaciones: para crear el archivo no debe existir y para abrir debe haber sido creado previamente. Computacion - FA.CE.NA.
  • 18. Estructuras de datos 7.3 Operaciones sobre archivos Cierre La finalidad de cierre de los archivos radica en permitir al usuario detener el uso de ese archivo, dejarlo inaccesible. Como todos los archivos fueron abiertos durante un programa, necesitan ser cerrados al finalizar el proceso. Para realizar esta operación solo necesitamos conocer el nombre del mismo. Computacion - FA.CE.NA.
  • 19. Estructuras de datos 7.3 Operaciones sobre archivos Lectura/Consulta Es la operación que nos permite acceder al archivo de datos para conocer la información alojada en uno, varios o todos los registros del archivo. Esta operación implica el traspaso de información desde el archivo a la memoria central del ordenador. Esta información es la contenida en un registro. Como se mencionó anteriormente, la única forma de guardar información en la memoria central es a través de variables. En una operación de este tipo, los nombres de las variables que reciben los datos del registro leído son los que se han asignado a los campos del mismo. Computacion - FA.CE.NA.
  • 20. Estructuras de datos 7.3 Operaciones sobre archivos Lectura/Consulta Por ejemplo, si tenemos el archivo de estudiantes cuyo registro posee: LU - Libreta Universitaria AYN - Apellido y Nombre DOMI- Domicilio FECHANAC- Fecha de Nacimiento Para representar gráficamente la operación de lectura haríamos LU AYN Leer DOMI FECHANAC A partir de este momento se podrá operar con estas variables, visualizarlas en pantalla, imprimirlas, compararlas, etc.- Si se efectúa una segunda lectura, el contenido del segundo registro pasará a las mismas variables de la memoria, sustituyendo sus anteriores valores. Por lo tanto, en cada instante del proceso solo se dispone de la información del registro recién leído. Computacion - FA.CE.NA.
  • 21. Estructuras de datos 7.3 Operaciones sobre archivos Fin de archivo Toda instrucción de ingreso de datos, ya sea desde teclado o desde un dispositivo magnético, requiere una condición de fin de ingreso de los C om enzar datos, con el objeto de determinar cuando se han terminado los registros de un archivo o cuando ya no se desean ingresar mas datos desde el teclado. Esta condición la denominamos fin de archivo In g re s a r N O TA conocida como EOF (end of file). Para el ingreso de datos por teclado se prevee, generalmente la introducción de un valor elegido por el programador que será el indicador de que N O TA = 11 N o ya no se ingresarán mas datos, por ejemplo si se introducen por teclado notas de los alumnos, el fin de datos estará dado por un valor que sea un Si absurdo o datos que no existan en esa población, P a ra r en este caso se podría tomar NOTA=11. El diagrama de la figura muestra lo mencionado. Computacion - FA.CE.NA.
  • 22. Estructuras de datos 7.3 Operaciones sobre archivos Fin de archivo C om enzar Si los datos que se leen están soportados en un archivo y sobre el se realizan lecturas sucesivas, llegará un momento en que este se acabe; es decir ya no queden mas registros por leer. Esta situación la detecta el sistema después de una operación de lectura, Leer cuando lo que se ha leído no es un registro { lis ta d e de datos, sino lo que se conoce con el cam pos} nombre de marca de fin de archivo. Por tanto, siempre que se ejecute una operación de lectura sobre un archivo secuencial, a continuación hay que preguntar si lo que se ha leído es la marca EOF o, por el contrario, un registro de datos para ejecutar las acciones pertinentes. El diagrama de flujo de EO F No la figura muestra el uso de la condición EOF. Si P a ra r Computacion - FA.CE.NA. .
  • 23. Estructuras de datos 7.3 Operaciones sobre archivos Actualización La actualización de un archivo supone las siguientes operaciones: Añadir registros – ALTAS Modificar registros ya existentes – MODIFICACIONES Borrar registros – BAJAS El modo de operar la actualización varía según la organización y método de acceso del archivo. . Computacion - FA.CE.NA.
  • 24. Estructuras de datos 7.3 Operaciones sobre archivos Destrucción La operación de destrucción o borrado realiza la supresión del archivo en el soporte o dispositivo, dejando este espacio que ocupaba anteriormente disponible. . Computacion - FA.CE.NA.
  • 25. Estructura de datos 7.4 Estructuras lineales y no lineales Cuando hablamos de Estructuras de Datos hacemos referencia a un conjunto de datos que poseen el mismo nombre, que pueden ser caracterizados por su organización y por las operaciones que se definen en ella. Las Estructuras de Datos son muy importantes en los sistemas de computación y para explicar mas fácilmente veremos la siguiente clasificación la cual refleja el tipo de datos mas frecuentemente utilizados: Entero Estándar Real Datos Simples Caracteres Lógico Vectores y Matrices Estáticas Registros Archivos Pilas Estructura de datos . Lineales Colas Dinámicas Listas Enlazadas No lineales Arboles Grafos Computacion - FA.CE.NA.
  • 26. Estructura de datos 7.4 Estructuras lineales y no lineales Las estructuras de datos estáticas son aquellas en las que el tamaño ocupado en memoria se define antes que el programa se ejecute y el mismo no puede ser modificado durante la ejecución. En cambio las estructuras de datos dinámicas no tienen limitaciones en cuanto al tamaño de memoria ocupada. Para utilizar este tipo de estructuras necesitamos usar un tipo de dato específico llamado puntero. Los tipos de datos que vimos hasta ahora son datos simples cuya característica común es que cada variable representa a un elemento; en cambio los tipos de datos estructurados tienen como particularidad que con un nombre o identificador se puede representar múltiples datos individuales y a su vez cada uno de estos puede ser referenciado independientemente. . Computacion - FA.CE.NA.
  • 27. Estructura de datos 7.5 Arreglos Concepto Arreglos se define como una colección finita, homogénea y ordenada de elementos. Finita: Todo arreglo tiene un límite, es decir, debe determinarse cual será el número máximo de elementos que podrán formar parte del arreglo. Homogénea: Todos los elementos de un arreglo son del mismo tipo o naturaleza (todos enteros, todos booleanos, etc.- ), pero nunca una combinación de distintos tipos. Ordenada: Se debe determinar cual es el primer elemento, el segundo, el tercero..... y el enésimo elemento. A R R E G L O 1º E LE M E N T O 2º E LE M E N T O N - E LE M E N T O . Computacion - FA.CE.NA.
  • 28. Estructura de datos 7.5 Arreglos Características Si un arreglo tiene la característica de que puede almacenar a N elementos del mismo tipo, deberá tener la posibilidad de permitir seleccionar a cada uno de ellos. Así se distinguen dos partes en los arreglos. ● Los componentes o elementos (valores que se almacenan en c/u de las casillas) ● Los índices (Permiten hacer referencia a los componentes) El número total de componentes (NTC) es igual al límite superior (LS) menos límite inferior (LI) mas 1 NTC = LS - LI + 1 El tipo de índice puede ser cualquier tipo ordinal (carácter, entero, enumerado) El tipo de los componentes puede ser cualquiera (entero, real, cadena de caracteres, registro, etc.) Se utilizan ( ) para indicar el índice de un arreglo. Entre los ( ) se debe escribir un valor ordinal (puede ser una variable, una constante o una expresión que dé como resultado un valor ordinal) . Computacion - FA.CE.NA.
  • 29. Estructura de datos 7.5 Arreglos Ejemplo Sea V un arreglo de 30 elementos enteros con índices enteros. V = (52,12,31,102,....75) V (50)= v(1), v(2), v(3),...., v(30), Su representación se muestra en la figura Componentes 52 12 31 102 ..... 75 1 2 3 4 ..... 30 Indices Donde NTC = (30 – 1 + 1) = 30 Cada componente del arreglo V será un número entero, y podrá accederse por medio de un índice que será un valor comprendido entre 1 y 30. . Computacion - FA.CE.NA.
  • 30. Estructura de datos 7.5 Arreglos En cuanto a las dimensiones los arreglos pueden ser: Unidimensional o vector: un solo índice Bidimensional o matriz: dos índices Multidimensional: mas de dos índices . Computacion - FA.CE.NA.
  • 31. Estructura de datos 7.5 Arreglos Diferencia con registros Las dos diferencias sustanciales entre arreglos y registro son: 1) Un arreglo puede almacenar N elementos del mismo tipo, mientras que un registro puede almacenar N elementos de distintos tipos que se llaman campos. 2) Los componentes de un arreglo se acceden por medio de índices, mientras que en un registro los campos se acceden por medio de su nombre, el cual es único. Un vector unidimensional, es el vector TEMPERATURA que contiene las temperaturas horarias registradas en una ciudad durante las 24 horas del día. Este vector constará de 24 elementos del tipo real, ya que las temperaturas no serán enteras siempre. El valor mínimo del índice 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 este ejemplo el límite inferior es 1 y el superior 24. TEMPERATURA (I) donde 1 <= I <= 24 . Computacion - FA.CE.NA.
  • 32. Estructura de datos 7.5 Arreglos Diferencia con registros Los vectores se almacenan en memoria central de la computadora en un orden adyacente. Así, un vector de cincuenta números denominado NUMEROS se representa físicamente por cincuenta posiciones de memoria sucesivas. Sea un vector X de ocho elementos: X[1] X[2] X[3] X[4] X[5] X[6] X[7] X[8] 14.0 12.0 8.0 7.0 6.41 5.23 6.15 7.25 . Computacion - FA.CE.NA.
  • 33. Estructura de datos 7.5 Arreglos Operaciones Podemos clasificar a las operaciones en las que intervienen arreglos de la siguiente manera: Lectura / escritura Recorrido Asignación Actualización (Añadir, eliminar, insertar) Ordenación Búsqueda Computacion - FA.CE.NA.
  • 34. Estructura de datos 7.5 Arreglos Operaciones: Lectura / escritura El proceso de lectura /escritura de un arreglo se realiza de la siguiente manera: Leer V(i) Lee todo el arreglo Escribir V(i) Escribe todo el arreglo Leer V(3) Lee el elemento 3 del arreglo Si se desea leer los 30 elementos de un vector en forma consecutiva se deberá hacer de la siguiente manera . Leer V(1) Leer V(1) Leer V(2) Leer V(3) Leer Leer V(..) V(2) Leer V(.30) .................. Leer V(30) Computacion - FA.CE.NA.
  • 35. Estructura de datos 7.5 Arreglos Operaciones: Lectura / escritura Pero de esta forma resultaría poco práctico, por lo tanto debemos usar la siguiente notación para realizar la lectura / escritura de un arreglo. Leer V(i) i = 1 a 30 Este proceso es válido también para escritura, simplemente se debe especificar dentro del símbolo la acción a realizar, en este caso Escribir V(i). Computacion - FA.CE.NA.
  • 36. Estructura de datos 7.5 Arreglos Operaciones: Recorrido Recorrer un vector significa acceder a todos y a cada uno de sus elementos desde el principio hasta el final o viceversa. Se puede acceder a los elementos de un vector para introducir datos (leer) en él o bien para ver su contenido (escribir). A la operación de acceder a todos los elementos para efectuar una acción determinada se denomina recorrido del vector. Esta operación se realiza usando estructuras repetitivas, cuya variable de control I, se utiliza como subíndice del vector (por ejemplo V(i). El incremento del contador del bucle producirá el tratamiento sucesivo de los elementos del vector. Esta operación es muy utilizada en este tipo de estructuras de datos, dado que cuando se está en presencia de un vector, el acceso a toda la información se realiza recorriéndolo. En algunos casos se puede acceder a un determinado elemento o a varios de ellos con ciertas características sin necesidad de recorrer todo el arreglo, por ejemplo acceder solo al último elemento que sabemos a priori posee la suma de los elementos anteriores. Computacion - FA.CE.NA.
  • 37. Estructura de datos 7.5 Arreglos Operaciones: Recorrido Ejemplo C o m ie n z o Sumar los 30 elementos de un vector V. S U M A = 0 Leer V ( i) i = 1 a 30 I = 1 S U M A = S U M A + V ( i) I = 30 N o I = I +1 S I P a ra r Computacion - FA.CE.NA.
  • 38. Estructura de datos 7.5 Arreglos Operaciones: Asignacion En general no es posible asignar directamente un valor a todo el arreglo; se debe asignar el valor deseado a cada componente usando la instrucción de asignación, recordando que la asignación coloca el nuevo contenido en la variable destruyendo el valor anterior. 15  V(20) o V(20) = 15 asigna el valor 15 al elemento 20 del vector V Si se quiere asignar valores a todos los componentes del vector, se debe recurrir a las estructuras repetitivas. Por ejemplo, si se desea poner en cero al vector V(30) la solución se muestra en la siguiente pantalla Computacion - FA.CE.NA.
  • 39. Estructura de datos 7.5 Arreglos Operaciones: Asignacion Comienzo También se puede asignar una variable tipo arreglo a otra exactamente del mismo tipo. A(I)  V(I) o V(I) = A(I) I=1 V (i) = 0 I = 30 No I = I +1 SI Parar Computacion - FA.CE.NA.
  • 40. Estructura de datos 7.5 Arreglos Operaciones: Actualizacion Muchas veces resulta interesante que dado un arreglo, puedan añadirse nuevos elementos o eliminar o insertar componentes. Estas resultan las tres operaciones elementales que se pueden realizar en un arreglo: añadir, eliminar e insertar elementos. Cuando se realiza una operación de añadir un nuevo elemento a continuación del último valor no nulo, la única condición necesaria para esta operación es comprobar que haya espacio para el nuevo elemento. Computacion - FA.CE.NA.
  • 41. Estructura de datos 7.5 Arreglos Operaciones: Actualizacion Ejemplo Dado un vector C de 8 elementos que contiene una nómina de 5 direcciones de correo ordenadas alfabéticamente. Se desea añadir la dirección valeria@server.com alicia@server.com alicia@server.com Comenzar 1 1 2 castor@server.com castor@server.com 2 3 daniel@server.com daniel@server.com 3 C(I) I=1a8 4 marta@server.com marta@server.com 4 5 sonia@server.com sonia@server.com 5 6 valeria@server.com 6 C(6) = "valeria@server.com" 7 7 8 8 Parar Computacion - FA.CE.NA.
  • 42. Estructura de datos 7.5 Arreglos Operaciones: Actualizacion Con la simple instrucción de asignación se añaden los elementos. Insertar un elemento es una operación que consiste en introducir dicho elemento en el interior del vector, en una posición I dada, de forma tal que los elementos ubicados en las siguientes posiciones sean desplazados a las posiciones I + 1 respectivas. La operación de eliminar un elemento al final del arreglo no presenta ningún problema; en cambio, si el borrado se realiza en el interior del mismo esto provoca el efecto contrario al de insertar, el movimiento deberá ser hacia arriba (I-1) de los elementos inferiores a él para reorganizar el vector. Computacion - FA.CE.NA.
  • 43. Estructura de datos 7.5 Arreglos Operaciones: Actualizacion Ejemplo Tomamos el vector C del ejemplo anterior, pero en este caso se desea eliminar del arreglo el elemento 4. a lic ia @ s e r v e r .c o m a lic ia @ s e r v e r .c o m C o m e n za r 1 1 2 c a s to r@ s e rv e r.c o m c a s to r@ s e rv e r.c o m 2 3 d a n ie l@ s e r v e r .c o m d a n ie l@ s e r v e r.c o m 3 C (I) I = 1 a 8 4 m a r ta @ s e rv e r.c o m p a s c u a l@ s e r v e r .c o m 4 5 p a s c u a l@ s e r v e r .c o m s o n ia @ s e r v e r . c o m 5 6 s o n ia @ s e r v e r .c o m v a le r ia @ s e r v e r .c o m 6 I = 4 7 v a le r ia @ s e r v e r.c o m 7 8 8 C (I) = C (I+ 1 ) I = 8 N o I = I + 1 S i P a ra r Computacion - FA.CE.NA.
  • 44. Estructura de datos 7.5 Arreglos Operaciones: Bùsqueda Consiste en encontrar elemento/s dentro de un arreglo Ejemplo Dado un arreglo A de 100 elementos, averiguar e informar cuantos elementos nulos posee. Imprimir el arreglo. Pseudocódigo Inicio Comenzar 0 --> NULOS NULOS = 0 Leer A (I) I=1,100 Leer A(I) Averigua si el elemento es cero Para I desde 1 hasta 100 1 --> I Si A(I) = 0 A(I) = 0 Si NULOS = NULOS + 1 entonces NULOS = NULOS + 1 No fin_si I = 100 No I =I+1 fin_para Si Termina de recorrer el vector e informa el Imprimir “Total nulos” NULOS total de elementos "Total de nulos " nulos encontrados NULOS Imprimir “Vector “ A(I) Imprime el vector de una sola vez "Vector A" Parar A(I) I= 1,100 Fin Computacion - FA.CE.NA.
  • 45. Estructura de datos 7.5 Arreglos Arreglos bidimensionales: Matrices Un arreglo de dos dimensiones, también denominada matriz, se define como una tabla de tablas, o vector de vectores, es decir, es aquella en la cual uno de sus elementos es, a su vez, una tabla unidimensional. Podemos comparar una matriz con una hoja de papel cuadriculado en la que cada cuadrícula corresponderá a un elemento. Columna 1 Columna 2 Columna 3 Columna 4 Fila 1 Fila 2 12 Fila 3 Computacion - FA.CE.NA.
  • 46. Estructura de datos 7.5 Arreglos Arreglos bidimensionales: Matrices Un arreglo de dos dimensiones, también denominada matriz, se define como una tabla de tablas, o vector de vectores, es decir, es aquella en la cual uno de sus elementos es, a su vez, una tabla unidimensional. Podemos comparar una matriz con una hoja de papel cuadriculado en la que cada cuadrícula corresponderá a un elemento. Columna 1 Columna 2 Columna 3 Columna 4 En este gráfico podemos Fila 1 observar que cada fila está dividida en varias columnas. Por lo tanto, para poder referenciar un elemento de la matriz, hay que especificar el nombre de la Fila 2 12 misma (igual que con los vectores) y, entre paréntesis, dos subíndices separados por coma; el primero indicará la fila en la que se encuentra el Fila 3 elemento y el segundo la columna. Computacion - FA.CE.NA.
  • 47. Estructura de datos 7.5 Arreglos Arreglos bidimensionales: Matrices Por lo tanto, si suponemos que la matriz representada se llama MAT, el casillero con el número 12 corresponderá al elemento ubicado en la fila 2 columna 3 y se lo representa como MAT(2,3). Si generalizamos, MAT(i,j) sería el elemento correspondiente a la fila i columna j. El caso anterior, representado en forma matricial sería como muestra la figura. Donde la matriz llamada MAT tiene filas que varían de 1 a 3 y columnas que varían de 1 a 4, por lo tanto diremos que la matriz MAT tiene 3 x 1 2 3 4 4 elementos. I = 1...3 J = 1....4 1 Si generalizamos el rango, resultaría: I = 1...M J = 1....N Y diremos que la matriz MAT tiene M x N 2 MAT(I,J) elementos. Existen N elementos en cada fila y M elementos en cada columna. El resultado de multiplicar la cantidad de filas 3 por cantidad de columnas es el tamaño de la matriz. En nuestro ejemplo anterior el tamaño es de 12 (3 x 4). Computacion - FA.CE.NA.
  • 48. Estructura de datos 7.5 Arreglos Recorrido de una matriz Como vimos anteriormente, recorrer una tabla de dos dimensiones significa acceder a todos y a cada uno de sus elementos. Este proceso de recorrer la matriz se llevará a cabo mediante la estructura repetitiva anidada. El recorrido de los elementos de la matriz se puede realizar por fila o por columna (ver figura) . Para recorrer por fila la matriz MAT se debe realizar dos estructuras repetitivas anidadas. En la primera de ellas (las mas externa) se realizan tres iteraciones para recorrer las 3 filas. En cada una de esas iteraciones, se realizará a su vez 4 iteraciones para recorrer los 4 elementos de cada fila (uno por cada columna). Sentido en que se Sentido en se recorre recorre una matriz por una matriz por fila Computacion - FA.CE.NA. columna
  • 49. Estructura de datos 7.5 Arreglos Ejemplo Supongamos que tenemos una matriz que contiene de los doce meses del año las 4 temperaturas máximas de cada mes T(12,4) y se desea imprimir los datos. T e m p e ra tu ra T e m p e ra tu ra T e m p e ra tu ra T e m p e ra tu ra M á x im a M á x im a M á x im a M á x im a Si deseamos imprimir los datos por mes (fila 1 2 3 4 de la matriz) debemos recorrer la misma por 01 fila de forma tal que por cada fila debemos e n e ro recorrer las 4 columnas de la misma. Pero 30 31 33 30 como la matriz tiene 12 filas, este proceso se repite 12 veces – uno por cada fila – y de 02 esta manera formamos dos ciclos anidados. fe b re ro Uno mas externo – fila - que se repite 12 29 31 30 30 veces y uno mas interno – columna – que por cada fila se repite 4 veces. 03 m a rz o 22 24 24 23 04 a b ril 25 23 24 24 POR CADA FILA DEBO RECORRER LAS 12 FILAS 4 COLUMNAS CUATRO COLUMNAS ............... ........................ ............................ ...................... DE LA MATRIZ 12 d ic ie m b r e 28 26 29 30 Computacion - FA.CE.NA.
  • 50. Estructura de datos 7.5 Arreglos Entonces, recorrer esta matriz para imprimirla consistirá en: Posicionarse en la primer fila (I=1) y recorrer todas sus columnas (desde J=1 hasta J=4). Posicionarse en la segunda fila (I=2) y volver a recorrer, nuevamente, todas sus columnas (desde J=1 hasta J=4). Repetir estas operaciones para cada valor de I hasta que se hayan realizado para la última fila, es decir para I=12. T e m p e ra tu ra T e m p e ra tu ra T e m p e ra tu ra T e m p e ra tu ra M á x im a M á x im a M á x im a M á x im a 1 2 3 4 01 e n e ro 30 31 33 30 02 fe b re ro 29 31 30 30 03 m a rz o 22 24 24 23 04 a b ril 25 23 24 24 ............... ........................ ............................ ...................... 12 d ic ie m b re 28 26 29 30 Computacion - FA.CE.NA.
  • 51. Estructura de datos 7.5 Arreglos El Pseudocódigo y diagrama de flujo correspondientes para recorrer e imprimir la matriz T(12,4) sería: C O M E N Z A R Comenzar Para I = 1 a 12 T (I , J ) I = 1 ,1 2 J = 1 ,4 Para J = 1 a 4 Imprimir T(I,J) I = 1 Fin_para Fin_para Parar J = 1 T (I,J ) c ic lo d e J c ic lo d e I J = 4 N o J = J + 1 S i I = 4 N o I = I + 1 S i P A R A R Computacion - FA.CE.NA.
  • 52. Estructura de datos 7.5 Arreglos Del mismo modo, si deseamos recorrer una matriz por columna se debe para cada columna recorrer todas sus filas, en este caso 12. El pseudocódigo se transformaría en: comienzo Comenzar T(I , J) I = 1,12 Para J = 1 a 4 J = 1,4 Para I = 1 a 12 Imprimir T(I,J) J=1 Fin_para Fin_para I=1 Parar T(I,J) ciclo de I ciclo de J I = 12 No I =I +1 Si J=4 No J=J+1 Si parar Computacion - FA.CE.NA.
  • 53. Estructura de datos 7.5 Arreglos Es importante observar que la única variación entre estas dos resoluciones es el intercambio de los subíndices en las estructuras repetitivas, y lo que permanece invariable, sin embargo, es el orden de los mismos durante la impresión. comienzo C O M E N Z A R T(I , J) T (I , J ) I = 1,12 I = 1 ,1 2 J = 1,4 J = 1 ,4 J=1 I = 1 I=1 J = 1 T(I,J) cic lo de I T (I,J ) c ic lo d e J cic lo de J c ic lo d e I I = 12 No I=I+1 J = 4 N o J = J + 1 Si S i J=4 No J=J+1 I = 4 N o I = I + 1 Si S i parar P A R A R Computacion - FA.CE.NA.