ESCUELA SUPERIOR POLITÉCNICA AGROPECUARIA DE MANABÍ MANUEL FÉLIX LÓPEZ CARRERA DE INFORMÁTICA SEMESTRE: TERCERO PERIO
Views 109 Downloads 0 File size 440KB
ESCUELA SUPERIOR POLITÉCNICA AGROPECUARIA DE MANABÍ MANUEL FÉLIX LÓPEZ
CARRERA DE INFORMÁTICA
SEMESTRE: TERCERO
PERIODO: OCT – MAY/ 2012
TEMA: ARRAYS DE ESTRUCTURA
AUTORES: JHON ALEJANDRO INTRIAGO CHICHANDA ALCÍVAR ALCÍVAR MARÍA ALEXANDRA
FACILITADOR: HAROLD BUENAVENTURA
CALCETA, NOVIEMBRE DEL 2012
CONTENIDO
I.
ARREGLOS O ARRAYS ................................................................................................... 3 1.1
¿CÓMO DEFINIRÍA UN GRUPO DE PROGRAMADORES UN ARREGLO? 3
1.2
¿COMO DEFINIR ARREGLOS N DIMENSIONALES? ...................................... 3
1.3
¿QUÉ DATOS PODEMOS ALMACENAR EN ARREGLOS? ............................. 3
II. ARREGLOS LINEALES O UNIDIMENSIONALES ..................................................... 4 2.1 REPRESENTACIÓN EN MEMORIA: Los arreglos guardan en memoria la cantidad de espacios que se le indican en la declaración. (Ramirez, M. 2008) ......................... 4 III. ARREGLOS BIDIMENSIONALES ................................................................................. 5 IV. ARREGLOS Y APUNTADORES ..................................................................................... 5 4.1 V.
¿Cómo se puede hacer lo anterior? ........................................................................... 5
EJEMPLOS ......................................................................................................................... 6 ARREGLO LINEAL ................................................................................................................ 6 ARREGLO BIDIMENSIONAL ............................................................................................... 6 ARREGLO Y ARRAYS ........................................................................................................... 7
VI. RESUMEN ........................................................................................................................... 7 VII. CONCLUSIÓN .................................................................................................................... 7 VIII.
BIBLIOGRAFÍA ......................................................................................................... 8
I.
ARREGLOS O ARRAYS
Un arreglo es un conjunto de celdas de memoria relacionadas entre sí ya que todos tienen el mismo nombre y almacenan el mismo tipo de datos para referirse a una celda en particular algún elemento dentro del arreglo y entre corchetes [] el número de posición del elemento dentro del arreglo. El primer elemento se almacena en la posición 0 del arreglo, es decir el primer elemento del arreglo se conoce como a[0], el segundo como a[1], el séptimo como a[6] y en general el elemento de orden i del arreglo a se conoce como a[i-1]. (Rubén, J. 2004) El número de posición que aparece dentro de los corchetes se conoce como índice y debe ser un número entero o una expresión entera, por ejemplo: printf ("%i", a[0]+a[5]+a[10]); x=a[7]/2; x=a[4]=12; Para declarar un arreglo se emplea la siguiente sintaxis: tipo_de_dato nombre_del_arreglo [número de elementos]; int a[12]; float f[10]; char nom_emp [30];
1.1 ¿CÓMO DEFINIRÍA UN GRUPO DE PROGRAMADORES UN ARREGLO? o o o
Un conjunto de posiciones de memoria consecutivas. Un conjunto de pares de valores, índice y valor, donde para cada índice definido, hay un valor asociado con dicho índice. Una colección de variables del mismo tipo, que son referenciadas con un nombre común.
1.2 ¿COMO DEFINIR ARREGLOS N DIMENSIONALES? o
Si interpretamos los índices como n dimensionales ( i1, i2, ..., in ) estamos en presencia de arreglos n dimensionales.
1.3 ¿QUÉ DATOS PODEMOS ALMACENAR EN ARREGLOS? o o
Ruleta 7 10 8 17 29 11 13 2 32 35 24 17 0 5 16 Semana "Lunes" "Martes" "Miércoles" "Jueves" "Viernes" "Sábado" "Domingo"
o
o
o
II.
Edificio "Subsuelo" "Planta Baja" "Primer Piso" "Segundo Piso" "Terraza" Temperatura "27,2 C" "27,9 C" "28,5 C" "29,3 C" "31,0 C" "29,8 C" "28,6 C" 27,2 27,9 28,5 29,3 31,0 29,8 28,6 Polinomio 1 x**4 + 10 x**3 + 3 x**2 + 0 x**1 + 34 x**0 34 0 3 10 1. ( Testa, O .2005 )
ARREGLOS LINEALES O UNIDIMENSIONALES
Un arreglo unidimensional es un tipo de datos estructurado que está formado por una colección finita y ordenada de datos del mismo tipo. Es la estructura natural para modelar listas de elementos iguales. Los datos que se guarden en los arreglos todos deben ser del mismo tipo. El tipo de acceso a los arreglos unidimensionales es el acceso directo, es decir, podemos acceder a cualquier elemento del arreglo sin tener que consultar a elementos anteriores o posteriores, esto mediante el uso de un índice para cada elemento del arreglo que nos da su posición relativa. Los arreglos nos permiten hacer un conjunto de operaciones para manipular los datos guardados en ellos, estas operaciones son: ordenar, buscar, insertar, eliminar, modificar entre otras. En las matemáticas un arreglo lineal se lo conoce como a un vector. 2.1 REPRESENTACIÓN EN MEMORIA: Los arreglos guardan en memoria la cantidad de espacios que se le indican en la declaración. (Ramirez, M. 2008) .
III.
ARREGLOS BIDIMENSIONALES
Los arreglos bidimensionales son tablas de valores. Cada elemento de un arreglo bidimensional está simultáneamente en una fila y en una columna. En matemáticas, a los arreglos bidimensionales se les llama matrices, y son muy utilizados en problemas de Ingeniería. En un arreglo bidimensional, cada elemento tiene una posición que se identifica mediante dos índices: el de su fila y el de su columna.
IV.
ARREGLOS Y APUNTADORES
En C se pueden tener arreglos de apuntadores ya que los apuntadores son variables. A continuación se muestra un ejemplo de su uso: ordenar las líneas de un texto de diferente longitud. Los arreglos de apuntadores son una representación de datos que manejan de una forma eficiente y conveniente líneas de texto de longitud variable. 4.1 ¿Cómo se puede hacer lo anterior? 1. Guardar todas las líneas en un arreglo de tipo char grande. Observando que \n marca el fin de cada línea. Ver figura 8.1.g 2. Guardar los apuntadores en un arreglo diferente donde cada apuntador apunta al primer carácter de cada línea. 3. Comparar dos líneas usando la función de la biblioteca estándar strcmp(). 4. Si dos líneas están desacomodadas -- intercambiar (swap) los apuntadores (no el texto).
Figura 8.1: Arreglos de apuntadores (Ejemplo de ordenamiento de cadenas). Con lo anterior se elimina: El manejo complicado del almacenamiento. Alta sobrecarga por el movimiento de líneas. (Tejeda, H.2005 )
V.
EJEMPLOS
ARREGLO LINEAL #include "iostream.h" #include "stdlib.h" #define max 5 main(){ int vect[max],i; for(i=0;i