Arreglos Y Archivos
Enviado por geralagunes • 8 de Diciembre de 2013 • 1.675 Palabras (7 Páginas) • 1.212 Visitas
Introducción
Previo a esta investigación, hemos utilizado datos que representan valores simples, como lo pueden ser un número entero o un carácter. Sin embargo, en ocasiones es necesario registrar una gran cantidad de valores que tienen una relación, por ejemplo, registrar un inventario.
Para ello, podemos hacer uso de los ARREGLOS o ARRAYS, tema central de este documento. Los arreglos se pueden utilizar para poder almacenar un conjunto de variables, que sean solo del mismo tipo de dato. Si utilizáramos datos simples, los códigos generados serían muy extensos. Es por eso que se recomienda el uso de estos elementos, que contienen datos del mismo tipo y pueden ser seleccionados individualmente mediante el uso de subíndices.
En esta ocasión se presenta el concepto de arrays unidimensionales y multidimensionales, así como el procesamiento de los mismos.
ARREGLOS
Un arreglo o array (en inglés) es una colección de variables relacionadas a las que se hace referencia por medio de un nombre común. Otra definición válida es que un arreglo es un conjunto de datos que se almacenan en memoria de manera contigua con el mismo nombre y para diferenciar los elementos de un arreglo se utiliza un índice. En el lenguaje C++ un arreglo se le conoce como un tipo de dato compuesto. Los arreglos pueden tener una o varias dimensiones.
1 arreglo[0]
2 arreglo[1]
Representación gráfica de 3 arreglo[2]
float arreglo[6]; un arreglo de una 4 arreglo[3]
Dimensión
5 arreglo[4]
6 arreglo[5]
Representación gráfica de un arreglo de dos dimensiones
int arreglo[4][4][3] Representación gráfica de un arreglo de tres dimensiones
Índice de un arreglo
Todo arreglo está compuesto por un número de elementos. El índice es un número correlativo que indica la posición de un elemento del arreglo. Los índices en C++ van desde la posición 0 hasta la posición tamaño – 1.
Elemento de un arreglo
Un elemento de un arreglo es un valor particular dentro de la estructura del arreglo. Para acceder a un elemento del arreglo es necesario indicar la posición o índice dentro del arreglo. Ejemplo:
• arreglo[0] //Primer elemento del arreglo
Arreglos unidimensionales
Un arreglo de una dimensión es una lista de variables, todas de un mismo tipo a las que se hace referencia por medio de un nombre común. Una variable individual del arreglo se llama elemento del arreglo. Para declarar un arreglo de una sola dimensión se usa el formato general:
tipo_dato identificador[tamaño];
arreglo[0]
int arreglo[3]; arreglo[1]
arreglo[2]
Un elemento del arreglo se accede indexando el arreglo por medio de un número del elemento. En C++ todos los arreglos empiezan en 0, esto quiere decir que si se desea acceder al primer elemento del arreglo debe usar el índice igual a 0. Para indexar un arreglo se especifica el índice del elemento que interesa dentro de un corchete, ejemplo;
valor = arreglo[1];
Los arreglos empiezan en 0, de manera que el índice 1 se refiere al segundo elemento. Para asignar el valor a un elemento de un arreglo, ponga el elemento en el lado izquierdo de una sentencia de asignación.
mi_arreglo[0] = 100;
C++ almacena arreglos de una sola dimensión en una localización de memoria contigua con el primer elemento en la posición más baja. De esta manera, mi_arreglo[0] es adyacente a mi_arreglo[1], que es adyacente a mi_arreglo[2] y así sucesivamente. Puede usar el valor de un elemento de un arreglo donde quiera que usaría una variable sencilla o una constante.
Ejemplo, el siguiente programa carga el arreglo sqrs con los cuadrados de los números del 1 al 10 y luego los visualiza.
La forma como se almacenan los valores en el
1. using namespace std; arreglo es la siguiente:
2. #include <iostream>
3. int main() sqrs[0] = 1*1
4. { sqrs[1] = 2*2
5. int sqrs[10]; sqrs[2] = 3*3
6. int i; sqrs[3] = 4*4
7. for (i=1;i<11;i++) { sqrs[4] = 5*5
8. sqrs[i-1]=i*i; sqrs[5] = 6*6
9. } sqrs[6] = 7*7
10. for (i=0;i<10;i++) { sqrs[7] = 8*8
11. cout<<sqrs[i]<<endl; sqrs[8] = 9*9
12. } sqrs[9] = 10*10
13. return 0;
14. }
Asignación entre arreglos
En C++ no se puede asignar un arreglo completo a otro arreglo. Por ejemplo, este fragmento es incorrecto.
char a1[10], a2[10];
a2=a1; // Es incorrecto
Si desea copiar los valores de todos los elementos de una arreglo a otro debe hacerlo copiando cada elemento por separado. Por ejemplo, el siguiente programa carga a1 con los números 1 a 10 y después los copia en a2. Ejemplo 3.
1. using namespace std; La forma como quedarán los valores en el arreglo
2. #include <iostream> es la siguiente:
3. int main()
4. { a1[0] = a2[0]
5. int a1[10], a2[10]; a1[1] = a2[1]
6. int i; a1[2] = a2[2]
7. //Inicialización de a1 a1[3] = a2[3]
8. for (i=0; i<10;i++) a1[4] = a2[4]
9. a1[i]=i+1; a1[5] = a2[5]
10. //Copiar en a2 a1[6] = a2[6]
11. for (i=0; i<10;i++) a1[7] = a2[7]
12. a2[i]=a1[i] a1[8] = a2[8]
13. //Mostrar a2 a1[9] = a2[9]
14. for (i=0; i<10;i++)
15. cout<<a2[i]<<endl;
16. return 0;
17. }
Los arreglos prestan mucha utilidad cuando es necesario manejar lista de información. Por ejemplo, este programa lee la temperatura al mediodía, durante todos los días de un mes y luego informar la temperatura promedio mensual así como el día más caluroso y el más frío.
Arreglos multidimensionales
Es una estructura de datos estática y de un mismo tipo de datos, y de longitud fija que almacena datos de forma matricial. De igual forma que los arreglos unidimensionales, el almacenamiento de los datos en la memoria se realiza de forma
...