Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
2
respuestas

[Duda] Duda con indices de listas

Hola! No entiendo este pedazo de codigo:

for (var i = 0; i < serie.length; i++) { var altura = serie[i]; dibujarRectangulo(x, y + sumaAltura, 50, altura, colores[i]); sumaAltura = sumaAltura + altura;

Particularmente no entiendo porque usan serie[i] o colores[i]. cuando nos enseñaron listas nos enseñaron que dentro de los corchetes iba el indice para acceder a un elemento de la lista en particular. por ende no entiendo que significa que en este caso haya una i entre corchetes.

Desde ya muchas gracias!

2 respuestas

Hola,

Esto es porque "i" es el caracter que se declaro como variable. En este caso en el ciclo For "i" es la variable que ira aumentando, el cual aumentara hasta la cantidad de caracteres que tenemos ingresados en nuestro array "serie".

En este caso, cuando en cada ciclo que "i" vaya aumentando, la variable altura seria igual a "serie" en la posicion "i" (que sera el valor de "i" de ese momento que correspondera a una de las posiciones del array". Lo mismo en el colores [i] a medida el valor de "i" aumente, asi iran cambiando lo valores que tengamos dentro del array de colores.

Por ejemplo:

en el array colores=[red,blue,yellow,green,black,white] cuando i = 3, el valor de colores sera colores[3] que corresponde al color green.

Creo que seria asi la explicacion. Si estoy errado, estoy abierto a correccion, les agradeceria.

solución!

En este caso tanto serie[] como colores[] son arrays y se requiere acceder a cada elemento del respectivo array. Para no estar poniendo en indice uno por uno es que se usa el for

var serie2009 = [6, 47, 41, 3, 3];
var colores = ["blue","green","yellow", "red","gray"];

for (var i = 0; i < serie.length; i++) { 
var altura = serie[i]; 
dibujarRectangulo(x, y + sumaAltura, 50, altura, colores[i]); sumaAltura = sumaAltura + altura;

En este caso cuando el for inicia el valor de i=0 entonces al decirle que serie[i] y decirle colores[i] en el primer recorrido del for se accederá al indice 0 de esos arrays, en este caso de serie[i] se obtendía el 6** y de **colores[i] se obtendría el blue. Se repite cada ciclo hasta que se cumpla la condición en este caso es que i sea menor al tamaño del array serie, en este caso daría 5 vueltas el for. En resumen de esta manera puedes acceder a la información almacenada en los indices que deseas de manera automatizada.