48. C++ || Arrays declaración, ingresar y mostrar datos




Hasta ahora, cualquier otro tipo de dato que hemos visto, ha sido necesario declararlo para luego usarlo, un array no queda exento a esta regla. La forma de declarar un array es muy similar a cualquier otro tipo de dato, la única diferencia es la de establecer un índice dentro de corchetes []. Esto se hace para indicar al compilador la longitud máxima que tendrá nuestro array, la forma de hacer esto es la siguiente:

tipo nombreArray[longitudArray];

Donde:

  • Tipo. Es cualquier tipo de dato, bien sea uno proporcionado por C++, o uno creado por el usuario con una estructura o una clase.
  • nombreArray. Es cualquier nombre permitido por C++ que se le quiera poner al array.
  • longitudArray. Es la cantidad máxima de elementos que almacenará el array.

Por ejemplo, si queremos un array que almacene siete números enteros, lo haríamos de la siguiente manera:

int numeros[7];

Así el compilador reserva memoria para contener siete números. Ahora veamos el uso de los subíndices.

Subíndices de un array


Nosotros podemos acceder de manera específica a cualquier elemento dentro de un array por medio de los índices. Si por ejemplo, queremos mostrar el primer elemento, la sentencia siguiente funcionaría.

cout<<numeros[0]<<endl;

Así se mostrará en pantalla el elemento almacenado en la posición uno.

NOTA: Recuerda que los índices de un array siempre empiezan desde el valor cero.

Entonces, si queremos mostrar todos los elementos que hay dentro del array, lo haríamos como sigue:

cout<<numeros[0]<<endl;
cout<<numeros[1]<<endl;
cout<<numeros[2]<<endl;
cout<<numeros[3]<<endl;
cout<<numeros[4]<<endl;
cout<<numeros[5]<<endl;
cout<<numeros[6]<<endl;
cout<<numeros[7]<<endl;
cout<<numeros[8]<<endl;
cout<<numeros[9]<<endl;

Y esto funciona, pero vaya que se ve muy cutre. Debido a eso, muchas veces se va a utilizar bucles que nos permitan acceder a los elementos. Así quedaría mejor:

for(int i = 0; i < 10; i++){
 cout<<numeros[i]<<endl;
}

Con esto se mostrará todos los números en pantalla ya que el contador i irá incrementando, y a su vez, hará el rol de índice del array. Nota que se declaró i = 0, esto se hace para mostrar el primer elemento, que siempre es 0.

Se pueden referenciar los elementos de un array de diferentes formas, es decir, el índice puede ser una variable, constante o una expresión. Por ejemplo:

cout<<dias[30]<<endl; // índice constante
cout<<ventas[total + 7]<<endl; //expresión
cout<<bonos[mes]<<endl; //variable
cout<<salario[mes[enero] * 5]<<endl; //combinación de las tres, 
//incluyendo un elemento de otro array

Lo siguiente, son ejemplos de declaraciones correctas de un array.

int dias[30];
int mes[12],semana[7];
float salarios[20];
double temperatura[50];
char vocales[5];
const int MAX = 26;
char alfabeto[MAX];
int estudiante[i + j];

Almacenamiento de datos en un array


Hemos visto cómo mostrar los datos de un array, pero aún no sabemos cómo introducir datos en ellos. Para esto, piensen que es igual a cualquier variable. Recordemos el array anterior llamado numeros. Si queremos introducir datos en sus elementos, usamos el objeto cin como siempre hemos hecho.

cin>>numeros[0];
cin>>numeros[1];
cin>>numeros[2];
cin>>numeros[3];
cin>>numeros[4];
cin>>numeros[5];
cin>>numeros[6];
cin>>numeros[7];
cin>>numeros[8];
cin>>numeros[9];

Pero nuevamente se ve muy cutre, y no queremos eso. Usamos entonces un bucle for como hicimos anteriormente.

for(int i = 0; i < 10; i++){
 cin>>numeros[i];
}

Con esto quedará mejor. Ahora podremos ingresar datos al array, siempre recordando que deben ser de mismo tipo con el cual fue declarado.

Esta forma de hacerlo es mediante la asignación.

numeros[0] = 1;
numeros[1] = 2;
numeros[2] = 3;
numeros[3] = 4;
numeros[4] = 5;
numeros[5] = 6;
numeros[6] = 7;
numeros[7] = 8;
numeros[8] = 9;
numeros[9] = 10;


Y esto es todo lo básico para trabar con arrays: declararlos, referenciarlos, ingresar datos y mostrar datos. Continuaremos con su estudio y aprenderemos más de ellos, hasta dominarlos por completo resolviendo diversos ejercicios.


No hay comentarios