Partimos de una serie de datos relativos a un taller de coches donde hay coches en distintas zonas (diesel, gasolina, eléctricos) y de distintas marcas (renault, toyota, fiat, seat).
CochesDieselRenault = 9
CochesDieselToyota = 2
CochesDieselFiat = 0
CochesDieselSeat = 14
CochesGasolinaRenault = 3
CochesGasolinaToyota = 7
CochesGasolinaFiat = 4
CochesGasolinaSeat = 1
CochesElectricosRenault = 2
CochesElectricosToyota = 15
CochesElectricosFiat = 9
CochesElectricosSeat= 3
¿Cómo expresar esto en forma de arrays?
Un array es un conjunto de elementos tipo variable con un nombre común. Los arrays tienen índices numéricos y cada índice tiene un significado. El significado lo decidimos nosotros como programadores.
Por ejemplo:
ciudad(1) = "México D.F."
ciudad(2) = "Santiago"
Podría indicar que la ciudad nº1 de una lista es México D.F. y la ciudad nº 2 es Santiago.
Un array puede tener más de una dimensión (índice). Por ejemplo:
ciudad (1, 3) = "México D.F."
ciudad (1, 5) = "Santiago"
Podría significar la ciudad 1 del país 3 es México D.F, y la ciudad 1 del país 5 es Santiago. Fijarse que cada ciudad tiene un número y cada país tiene un número.
Todavía podemos tener más dimensiones. Por ejemplo:
ciudad(1, 3, 2) = "México D.F."
ciudad (1, 5, 2) = "Santiago"
Podría significar: la ciudad 1 del país 3 del continente 2 es México D.F. Y la ciudad 1 del país 5 del continente 2 es Santiago.
Volvamos al problema de los coches. El contenido que nos interesa es el número de coches. Y nos interesa saber cuántos coches hay para zona (diesel, gasolina, eléctrico) y marca (renault, toyota, fiat, seat).
Como los índices de arrays sólo funcionan con números (o de momento consideramos que sólo funcionan con números) tenemos que basarnos en una idea como:
coches (número de zona, número de marca) = cantidad de coches para esa zona y marca
Pero ¿Cuál es el número de zona y el número de marca para cada zona y marca? Tendremos que decidirlo nosotros como programadores, estableciendo una correspondencia. Así, por ejemplo podríamos establecer:
Zona diesel -- > 1
Zona gasolina -- > 2
Zona electrico -- > 3
Marca renault -- > 1
Marca toyota -- > 2
Marca fiat -- > 3
Marca seat -- > 4
Aquí lo que hemos definido son los índices (zona es el primer índice y marca es el segundo índice). Ahora tenemos que escribir asignaciones que sean coherentes. Por ejemplo:
coches (1, 3) = 0 se leería de la siguiente manera: los coches en la zona 1 (que es diesel) de la marca 3 (que es fiat) son 0 coches. O dicho de otra manera, hay 0 coches diesel de marca fiat.
Si escribimos coches(1,3) = 23 estaríamos diciendo que hay 23 coches diesel y fiat, pero esto no sería una asignación correcta si el enunciado del problema nos dice que hay 0 coches en la zona diesel que sean de marca fiat.
Con los datos del problema, tendremos que construir las asignaciones correctas una a una.