Académique Documents
Professionnel Documents
Culture Documents
Programacin Estructurada.
Hasta ahora hemos programado utilizando variables de tipo simple para almacenar los datos de un programa. En esta unidad comenzaremos a utilizar estructuras de datos en la implementacin de los algoritmos y programas.
06/11/2012
Homogneas
Heterogneas
Arreglos
Registros
Pilas
Colas
rboles
06/11/2012
[2] Arreglos.
[2.1] Qu son? Los arreglos son las estructuras de datos ms simples que hay, se visualizan como un conjunto de celdas apiladas, donde cada celda almacena un valor del tipo de datos con el que se haya declarado el arreglo.
Arreglo_A [6] Arreglo_B [5]
[2] Arreglos.
[2.2] Identificacin de las Celdas. Cada celda contiene un dato en particular, estos datos sern trabajados u operados tambin como si fueran uno solo. Para identificar a un dato de una celda N, basta con indicar el nmero de celda en el que ste se encuentra.
06/11/2012
[2] Arreglos.
[2.2] Identificacin de las Celdas. El proceso para numerar las celdas de un arreglo se llama INDEXACIN. Existen tres tipos de indexacin: Base 1: las celdas se numeran a partir de uno (1). Base 0: las celdas se numeran a partir de cero y hasta N-1, donde N es el nmero de celdas del arreglo.
[2] Arreglos.
[2.2] Identificacin de las Celdas. Base N: la numeracin comienza con el nmero N, a partir de l las demas celdas se numeran de forma continua. 1 2 3 4 5 6 Ejemplos:
0 1 2 3 4
A [6]
17 18 19 20 21 22 23
C [7]
B [5]
06/11/2012
[2] Arreglos.
[2.3] Tipos de Arreglos segn su Dimensin. Unidimensionales: de una sola dimensin son tambien llamados vectores. Se visualizan de dos maneras:
1 2 3 4 5 6 7
1 2 3 4 5 6 7
C [7]
[2] Arreglos.
[2.3] Tipos de Arreglos segn su Dimensin. Bidimensionales: de dos dimensiones, tambien llamados matrices. Se visualizan:
1
1 2 3 4
A [4,7]
06/11/2012
[2] Arreglos.
[2.3] Tipos de Arreglos segn su Dimensin. Multidimensionales: de tres o ms dimensiones.
[2] Arreglos.
[2.3] Declaracin de Arreglos.
Tipo_Dato Nombre *Dimension1, , DimensionN] Ejemplos: Entero Cedulas [40] Real Notas [40, 7] Caracter Nombres [40,15]
06/11/2012
[2] Arreglos
1
1 2 3 . . .
39 40 22000000 23000000
2
A U
3
R A I N
14 15
1 2 3 . . . 39 40
1
15 10
2
20 15
3
15 5
4
10 10
5
15 10
6
20 5
7
95 55
1 2 3 . . . 39 40
M J
Cedulas [40]
Nombres [40,15]
Notas [40,7]
[2] Arreglos.
[2.4] Operando con Arreglos: Elementos Particulares.
Lectura
Escritura Asignacin Operaciones Aritmticas
Leer ( Arreglo [N]) Mostrar (Arreglo [N]) Arreglo [N] = Valor Valor1 = Arreglo [N]*Valor2
06/11/2012
[2] Arreglos.
[2.3] Operando con Arreglos: Elementos Particulares.
Algoritmo Operando Elementos Individuales Inicio Entero A[5], N, M A[1] = 3 Mostrar (Indique un valor) Leer (N) A[N] = 5 A [2] = N Mostrar (Ingrese un valor) Leer (M) A [5] = M*A[1] A [M] = A[N]*2 //Continua
[2] Arreglos.
[2.3] Operando con Arreglos: Elementos Particulares.
Mostrar (Contenido del Arreglo: ) Mostrar (Celda 1: , A*1+) Mostrar (Celda 2: , A[2]) Mostrar (Celda 3: , A[3]) Mostrar (Celda 4: , A[4]) Mostrar (Celda 5: , A[5]) Fin
06/11/2012
[2] Arreglos.
[2.4] Operando con Arreglos: Conjunto de Elementos. Manual Lectura:
Mostrar (Ingrese los valores del Arreglo: ) Mostrar (Celda 1 : ) Implementado Leer (A[ 1 ]) Mostrar (Celda 2 : ) con ciclos Leer (A[ 2 ]) Mostrar (Celda 3 : ) Leer (A[ 3 ]) Mostrar (Ingrese los Valores del Arreglo: ) Mostrar (Celda 4 : ) Repetir Desde i=1 hasta i<=5 Leer (A[ 4 ]) Mostrar (Celda, i ,: ) Mostrar (Celda 5 : ) Leer ( A[ i ]) Leer (A[ 5 ]) Fin_Repetir_Desde
[2] Arreglos.
[2.4] Operando con Arreglos: Conjunto de Elementos. Manual Muestra:
Mostrar (Contenido del Arreglo: ) Mostrar (Celda 1 : , A* 1 ]) Mostrar (Celda 2 : , A[ 2 ]) Mostrar (Celda 3 : , A[ 3 ]) Mostrar (Celda 4 : , A[ 4 ]) Mostrar (Celda 5 : , A[ 5 ])
Mostrar (Contenido del Arreglo: ) Repetir Desde i=1 hasta i<=5 Mostrar (Celda, i , : , A* i ]) Fin_Repetir_Desde
06/11/2012
[2] Arreglos.
[2.4] Operando con Arreglos: Conjunto de Elementos. Inicializacin:
Manual
A[ 1 ] = 0 A[ 2 ] = 0 A[ 3 ] = 0 A[ 4 ] = 0 A[ 5 ] = 0
[2] Arreglos.
[2.4] Operando con Arreglos: Conjunto de Elementos. Variables para el ciclo de Bsqueda: bsqueda:
Algoritmo Bsqueda Lo que busco y la bandera. Inicio Entero A[10], i Entero buscado, busqueda=0 Mostrar (Cargar el Arreglo) Repetir Desde i=1 hasta i<=10 Pedimos lo que Mostrar(Introduzca el valor , i) vamos a buscar Leer (A[i]) Fin_Repetir_Desde Mostrar (Introduzca el elemento a buscar: ) Leer (buscado)
10
06/11/2012
[2] Arreglos.
[2.4] Operando con Arreglos: Conjunto de Elementos. Ciclo para la Bsqueda Bsqueda:
Repetir Desde i=1 hasta i<=10 Si (A[i]==buscado) busqueda = 1 Mostrar(El elemento que busca esta en la posicion, i) Fin_Si Fin_Repetir_Desde Si(busqueda == 0) Mostrar(No se encontro el elemento) Fin_Si Fin
[2] Arreglos.
[2.4] Operando con Arreglos: Conjunto de Elementos. Hallar el Mayor o Menor:
Algoritmo Mayor Variables para hallar Inicio mayor valor en el arreglo: Entero A[10], i El Mayor y su Posicion. Entero Mayor, Posicion Mostrar (Cargar el Arreglo) Repetir Desde i=1 hasta i<=10 Se asume que Mostrar(Introduzca el valor , i) inicialmente el primer Leer (A[i]) Fin_Repetir_Desde elemento es el mayor. Mayor = A[1] Posicion = 1
11
06/11/2012
[2] Arreglos.
[2.4] Operando con Arreglos: Conjunto de Elementos. Hallar el mayor o menor:
Repetir Desde i=2 hasta i<=10 Si (A[i] > Mayor) Mayor = A[i] Posicion = i Fin_Si Fin_Repetir_Desde
Mostrar (El valor Mayor es , Mayor) Mostrar (Se encuentra en la celda , Posicion) Fin
[2] Arreglos.
[2.4] Operando con Arreglos: Conjunto de Elementos. Ordenamiento:
Algoritmo Ordenamiento Burbuja Inicio Entero A[10], i, j, aux Mostrar (Cargar el Arreglo) Repetir Desde i=1 hasta i<=10 Mostrar(Introduzca el valor , i) Leer (A[i]) Fin_Repetir_Desde //Continua
12
06/11/2012
[2] Arreglos.
[2.4] Operando con Arreglos: Conjunto de Elementos.
Repetir Desde i=1 hasta i<=9 Repetir Desde j=1 hasta j<=9 Si (A[j+1]> A[j]) aux = A[j] A[j] = A[j+1] A[j+1] = aux Fin_Si Fin_Repetir_Desde Fin_Repetir_Desde Repetir Desde i=1 hasta i<=10 Mostrar (Celda, i, : , A[i]) Fin_Repetir_Desde Fin
Intercambio
13