Arreglo de datos

Solo disponible en BuenasTareas
  • Páginas : 12 (2880 palabras )
  • Descarga(s) : 0
  • Publicado : 26 de agosto de 2012
Leer documento completo
Vista previa del texto
¿ Qué es un arreglo de datos?
Arreglos (Array)
Un arreglo (array) es una colección de datos del mismo tipo, que se almacenan en posiciones consecutivas de memoria y reciben un nombre común. Para referirse a un determinado elemento de un array se deberá utilizar un índice, que especifique su posición relativa en el array. Un arreglo es una colección finita, homogénea y ordenada de elementos.Finita: Todo arreglo tiene un límite; es decir, debe determinarse cuál será el número máximo de elementos que podrán formar parte del arreglo. Homogénea: Todos los elementos del arreglo deben ser del mismo tipo. Ordenada: Se puede determinar cuál es el primer elemento, el segundo, el tercero,.... y el n-ésimo elemento.

TIPO DE ARREGLOS

Los arreglos se clasifican de acuerdo con el número dedimensiones que tienen. Así se tienen los:
- Unidimensionales (vectores)
- Bidimensionales (tablas o matrices)
- Multidimensionales (tres o más dimensiones)

PROBLEMA.
Suponga que se desea desarrollar un programa para:
1.Leer una lista de calificaciones de un examen
2.Encontrar su media
3.Escribir una lista de las calificaciones mayores que la media
4.Ordenar la lista de las calificacionesen orden ascendente.
Supongamos también que hay 100 calificaciones. Debemos utilizar 100 variables diferentes nota1, nota2, ...., nota100, de ese modo son 100 direcciones diferentes de memoria para almacenar las calificaciones del examen. Se imagina declarar las 100 variables, ¿cuántas instrucciones involucra?
Var Nota1,nota2,nota3,.........nota100: entero
(En la declaración real de un programano pueden usarse puntos suspensivos, por lo tanto serán 100 veces) . En la fase de lectura de datos, serán también 100 veces las instrucciones para ir leyendo cada valor. Leer (nota1, nota2,nota3,........., nota100)
Para calcular la media:
Media ¬(nota1+nota2+.......+nota100)/100
Para la lista de calificaciones mayores que la media, deberá también irse comparando una por una:
Si nota1 >media entonces
escribir (nota1)
Fin_si
Si nota2 > media entonces
escribir (nota2)
Fin_si
Si nota100 > media entonces
escribir (nota100)
Fin_si
Y después de más de 450 líneas de código..... ¡Falta ordenar la lista de calificaciones en orden ascendente!
Después que aprendas a usar arreglos verás cómo se ahorra instrucciones porque es fácil recorrer toda la lista de notas con unas pocasinstrucciones. En el caso anterior, cuando el acceso a la información es secuencial, sólo se puede acceder a un elemento buscando desde el principio de la lista, y esto es algo lento. Lo que se necesita es una estructura de acceso directo que permita almacenar y recuperar los datos directamente especificando su posición en la estructura, de esa manera se requerirá el mismo tiempo para acceder alelemento de la posición 100 que el de la posición 5.
También preferiremos que esta estructura se almacene en memoria principal para que su almacenaje y recuperación sea más rápida. Es por ello que existen los arreglos, que están organizados en una secuencia de elementos, todos del mismo tipo y se puede acceder a cada elemento directamente especificando su posición en esta secuencia.
ArreglosUnidimensionales:
Están formados por un conjunto de elementos de un mismo tipo de datos que se almacenan bajo un mismo nombre, y se diferencian por la posición que tiene cada elemento dentro del arreglo de datos. Al declarar un arreglo, se debe inicializar sus elementos antes de utilizarlos. Para declarar un arreglo tiene que indicar su tipo, un nombre único y la cantidad de elementos que va acontener. Por ejemplo, las siguientes instrucciones declaran tres arreglos distintos:
Float costo_partes[50];

Para acceder a valores específicos del arreglo, use un valor de índice que apunte al elemento deseado. Por ejemplo, para acceder al primer elemento del arreglo calificaciones debe utilizar el valor de índice 0 (calificaciones[0]). Los programas en C++ siempre indizan el primer elemento de...
tracking img