Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
4
respuestas

Problema con la función "for"

Hola, cómo van

Tengo una duda. Sucede que con el "while" sí se dibujaron los colores, pero con el "for", no. ¿Qué está fallando en mi código en la función "for"? Aquí mi código:

<canvas width="600" height="400">

</canvas>


<script>

    function dibujarCuadrado(j,h,color){

    var pantalla = document.querySelector("canvas") 
    var pincel = pantalla.getContext("2d")

    pincel.fillStyle= color;
    pincel.fillRect(j,h,200,50);
    pincel.strokeStyle = "black"
    pincel.strokeRect(j,h,200,50)

    }


    /*
    var x = 0;
    while (x < 600){

        dibujarCuadrado(x,0,"black")
        dibujarCuadrado(x,50,"yellow")
        dibujarCuadrado(x,100,"red")
        x = x + 50

    */

    for (var x = 0; x < 600, x= x+50){
        dibujarCuadrado(x,0,"black")
        dibujarCuadrado(x,50,"yellow")
        dibujarCuadrado(x,100,"red")
    }


</script>
4 respuestas

Hola compa

la única incoherencia que encontré es que no le puso punto y coma en : for (var x= 0;x < 600;= x+50){ dibujarCuadrado(x,0,"black") dibujarCuadrado(x,50,"yellow") dibujarCuadrado(x,100,"red") }

compare por favor de resto funciono bien....Saludos

Buenas, hay un error en la linea donde definiste el for, despues de la condicion ( x < 600 ) deberia ir " ; " y solo pusiste una coma, ahi se rompe tu bucle. Creo que ese es el error, avisa si se solucionó, Saludos

hola Benjamin , si estamos de acuerdo con tu planteamiento, por eso coloque esa respuesta al que tenia la duda que era el amigo llamado S ALUMNO.en el chat ok gracias

Hola!

El problema está en que en la función escribís la coordenada sobre el Eje X como "J" y sobre el Eje Y como "h" y al usar el "while" y el "for" llamás a las coordenadas como "x" e "y". Te conviene en la función declararlas como "x e y" en lugar de "j y h" para darte cuenta en que eje estás trabajando.

Saludos!