Anuncios

Bienvenidos sean a este post, hoy veremos un tipo de variable muy especial porque si bien hace las mismas funciones que una variable posee una conducta especial que nos va a facilitar nuestras tareas.

Anuncios

El array, arreglo o matriz, cada autor y/o profesor lo denomina a su manera, son variables muy particulares porque permiten almacenar mas de un dato en las mismas, su sintaxis es la siguiente:

tipoDato[] nombreArray = new tipoDato[tamaño];
Anuncios

Otra forma de crear es la siguiente:

tipoDato[] nombreArray = { valo1,valor2,...,valorN };
Anuncios
Anuncios

En ambos casos siempre primero ira el tipo de dato que almacenara nuestro array, puede ser string, int, double, etc., luego llevara si o si los dos corchetes, esto indicara que es un array, luego ira el nombre con el que identificaremos al array, nuestro siguiente paso sera crear el espacio en la memoria para el array y para ello usaremos la palabra new seguido del mismo tipo de dato usamos corchetes nuevamente y en el definiremos el tamaño del mismo, en el segundo caso abrimos una llave y le pasamos los valores divididos por comas, todos los necesarios y luego cerramos las llaves, para entender mejor el concepto veamos los siguientes ejemplos:

int[] miArreglo = new int[20];

int[] miOtroArreglo = { 4,2,-1,10,5,1 };
Anuncios
Anuncios

En este caso podemos ver como el primer array (miArreglo) va a ser de tipo int y observen como al crearlo usamos el mismo tipo y el tamaño que indicamos es de 20, esto indica la cantidad de espacios que tendremos disponibles para almacenar informacion y para este array podremos almacenar 20 datos, el segundo tendra esos valores asignados y el array (miOtroArreglo) se creara automaticamente con el tamaño de la cantidad de elementos que pasamos, lo bueno de trabajar de la primera forma es que en lugar de tener 20 variables distintas con informacion tendremos una sola variable con los 20 datos, pero como recuperaremos estos datos? Los datos se recuperan por posiciones, por ejemplo el primer dato va a estar en la posicion 0, casi todos los lenguajes comienzan desde este numero salvo Lua, el siguiente dato va a ser desde la posicion 1, el siguiente desde la 2 y asi sucesivamente, el segundo ejemplo trabaja de la misma forna pero no podremos asignar nuevos valores a lo que posee el array pero si reemplazarlos, esta manera de trabajar tiene sus pros y contras, veamos algunas de las mismas:

  • Son de un solo tipo
  • Son multidimensionales
  • Mayor rapidez de proceso
Anuncios

A que nos referimos con multidimensionales? Es la posibilidad de poder almacenar en mas de una posicion permitiendo almacenar mas informacion, tomemos como ejemplo un tablero de ajedrez, donde tenemos filas y columnas este seria un ejemplo de array bidimensional donde tendremos dos coordenadas, una por cada dimension, por ejemplo veamos los siguiente casos:

miArreglo[0][0] = 10:
miArreglo[0][1] = 20:
Anuncios

En este caso por ejemplo el primer dato se guardara en la coordenada 0,0 y el segundo dato en la coordenada 0,1 y asi sucesivamente donde nos brindara la posibildad de grabar valores en distintas posiciones.

Anuncios

Para crear un array bidimensional debemos hacer de la siguiente manera:

int[,] miArreglo = new int[10,10];
Anuncios

Si necesitamos agregar mas dimensiones o espacios simplemente debemos agregar mas comas en los primeros corchetes y en el segundo caso especificaremos todos los tamaños necesarios, para entender mejor el concepto veamos el siguiente ejemplo:

array.cs

using System;

public class Program
{
	static int Main()
	{
		int[] contador = new int[10];
		for (int i=0; i<9; i++)
		{
			contador[i] = i * i;
		}
		Console.WriteLine("Ejemplo de array simple: ");
		for (int i=0; i<9; i++)
		{
			Console.WriteLine(contador[i]);
		}
		Console.WriteLine("Ejemplo de array bidimensional: ");
		string[,] datos = new string[6,3];
		datos[0,0] = "Martin";
		datos[0,1] = "Miranda";
		datos[0,2] = "El Tinchicus";
		datos[1,0] = "Enzo";
		datos[1,1] = "Tortore";
		datos[1,2] = "El Gary";
		datos[2,0] = "Marta";
		datos[2,1] = "Gargaglione";
		datos[2,2] = "La Maru";
		datos[3,0] = "Javier";
		datos[3,1] = "Marcuzzi";
		datos[3,2] = "Kavito";
		datos[4,0] = "Ariel";
		datos[4,1] = "Polizzi";
		datos[4,2] = "Tio Poli";
		datos[5,0] = "Raul";
		datos[5,1] = "Picos";
		datos[5,2] = "Tio Raulio";

		for(int i=0; i<6; i++)
		{
			for(int j=0; j<3; j++)
			{
				Console.Write(datos[i,j] + "\t");
			}
			Console.Write("\n");
		}
		return 0;
	}
}
Anuncios

En este caso tendremos una clase que vera dos tipos de arrays: primero uno simple o unidimensional y despues veremos el bidimensional, veamos el primer caso:

		int[] contador = new int[10];
		for (int i=0; i<9; i++)
		{
			contador[i] = i * i;
		}
		Console.WriteLine("Ejemplo de array simple: ");
		for (int i=0; i<9; i++)
		{
			Console.WriteLine(contador[i]);
		}
Anuncios

Primero crearemos un array de tipo int y con una sola dimension, tal como dijimos antes, nuestro siguiente paso sera llenar el array que generamos con numeros, en este caso usaremos un bucle for para agregar en cada una de las posiciones de contador el cuadrado de i, es la variable que usaremos para contar las vueltas, mostramos un mensaje en pantalla y luego usamos nuevamente el bucle for, exactamente igual al anterior pero en lugar de agregar un valor lo usamos para recuperarlo, para hacer esto usamos el nombre y entre corchetes pasamos el valor de i como posicion, antes de ver la salida veamos el siguiente bloque que es para un array bidimensional:

		string[,] datos = new string[6,3];
		datos[0,0] = "Martin";
		datos[0,1] = "Miranda";
		datos[0,2] = "El Tinchicus";
		datos[1,0] = "Enzo";
		datos[1,1] = "Tortore";
		datos[1,2] = "El Gary";
		datos[2,0] = "Marta";
		datos[2,1] = "Gargaglione";
		datos[2,2] = "La Maru";
		datos[3,0] = "Javier";
		datos[3,1] = "Marcuzzi";
		datos[3,2] = "Kavito";
		datos[4,0] = "Ariel";
		datos[4,1] = "Polizzi";
		datos[4,2] = "Tio Poli";
		datos[5,0] = "Raul";
		datos[5,1] = "Picos";
		datos[5,2] = "Tio Raulio";
Anuncios
Anuncios

Esta vez usaremos este array para almacenar personas y los datos que almacenaremos seran el nombre, el apellido y el apodo, la primera linea es la encargada de crear nuestro array, en este caso de tipo string, luego vean como se agregan, la primera linea podriamos considerarla como fila y el segundo como la columna, entonces podriamos hacer como se ve, si la primera coordenada es la fila, este se mantiene constante para cada persona y los datos los almacenamos en las distintas columnas por eso va variando en cada persona, vean bien el patron donde por cada dato la primera dimension o coordenada no se modifica y la segunda va variando por cada dato porque es donde realmente se almacena, en nuestro siguiente bloque veremos como recuperarlo:

		for(int i=0; i<6; i++)
		{
			for(int j=0; j<3; j++)
			{
				Console.Write(datos[i,j] + "\t");
			}
			Console.Write("\n");
		}
Anuncios
Anuncios

En este caso primero tendremos un bucle for que contara hasta 6, y lo almacenara en i, este parte del bucle se encargara de asignar el valor de la fila, dentro de este for habra otro bucle for que contara hasta 3 y lo almacenara en j, este se encargara de las columnas y dentro de este bucle nos encargaremos de mostrar el dato segun el valor de i y j, y al final le agregamos un modificador (\t), el cual se encarga de hacer una tabulacion, por ultimo cuando termina este bucle, es decir que escribio todo los datos usamos otro Console.Write pero con el modificador \n que se encarga de hacer una linea, equivale a un Enter, y volvemos a repetir el bucle del for de filas y de vuelta el de las columnas, veamos su salida:

C:\Users\tinchicus\Documents\Visual Studio 2019>array
Ejemplo de array simple:
0
1
4
9
16
25
36
49
64
Ejemplo de array bidimensional:
Martin  Miranda El Tinchicus
Enzo    Tortore El Gary
Marta   Gargaglione     La Maru
Javier  Marcuzzi        Kavito
Ariel   Polizzi Tio Poli
Raul    Picos   Tio Raulio

C:\Users\tinchicus\Documents\Visual Studio 2019>
Anuncios

Como pueden observar los dos arrays funcionaron de forma correcta, veamos todo esto aplicado en un video

Anuncios

En este caso podemos ver el codigo simple que analizamos antes, como se compila y ejecuta, luego hicimos una pequeña modificacion para que los datos queden un poco mas claros.

Anuncios

En resumen, hoy hemos visto que son los arrays, como se crean, para que se usan, como estan compuestos, sus particularidades, sus pros y sus contras, como trabajar con un array simple, como trabajar con uno bidimensional, cuales son los beneficios y como sacarle un buen provecho, espero les haya sido util sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Tengo un Patreon donde podes acceder de manera exclusiva a material para este blog antes de ser publicado, sigue los pasos del link para saber como.

Tambien podes donar

Es para mantenimiento del sitio, gracias!

1.00 $