Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Dudas en el ejercicio de Gráfico de Barras - Lógica de programación parte 3 -

En la respuesta dado por el instructor, define una función llamada dibujarBarra, no entiendo 2 cosas.

  1. Se declara la función dibujarBarra, después de definir el for declaran la variable altura que va a tomar los valores de un arreglo denominado serie, var altura = serie[i] ese arreglo no lo veo en ninguna parte del código, veo solo 3 arreglos, colores, serie2009 y serie2019, por lo tanto no entiendo que valores esta tomando serie[i] en dicha interacción, que a su vez le pasa a la variable altura.

  2. Dentro de la función dibujarBarra, se llama a la función dibujarRectangulo el cual esta dentro del bucle for, los parámetros que pide la función dibujarRectangulo son dibujarRectangulo(x, y, base, altura, color), al momento de definir los parámetros de dicha función, en el lugar que se encuentra en el código, lo definen de la siguiente manera: dibujarRectangulo(x, y + sumaAltura, 50, altura, colores[i]), algunos de los llamados a la variable dibujarBarra(50, 50, serie2009, colores, "2009"), trasladando eso a la variable dibujarRectangulo, asumo que x=50, y=50+ sumaAltura, base=50(es constante), altura = altura; color = colores[i], en esa misma lógica que el color va variando en cada iteración del bucle, la altura no lo debería hacer, también, que resultado da altura = altura, o en que parte del código se establece la altura del rectángulo a dibujar, será en los arreglos denominados serie2009 y serie2019?

  3. En la función escribirTexto, se establecen los siguientes parámetros, escribirTexto(x , y, texto) y en la función pincel.fillText lo establecen en el siguiente orden(texto, x, y), eso no afecta en algo la ejecución del código ?

Agradezco su respuestas, feliz resto de día.

1 respuesta

Hola Antony, el valor de la variable serie[i] se guarda en altura por eso se escribe: altura = serie[i], por otro lado...

const dibujarBarra = (x, y, serie, colores, texto) => {
        escribirTexto(x, y - 10, texto);
        let sumaAltura = 0; ..................................//acá la el valor es (0)
        for(let i = 0; i < serie.length; i ++) {
            let altura = serie[i];
            dibujarRectangulo(x,   y +. sumaAltura, 50, altura, 
                                                                                                    colores[i]);  // a cada vuelta del ciclo (i ) va a cambiar el valor de el Colores también..
            sumaAltura = sumaAltura + altura; //acá guardas el valor de sumaAltura + altura dentro de sumaAltura
        }

no sé si me explico, espero te ayude a entender el código. saludos