Return to Video

Ciclos For Anidados (Versión en Video)

  • 0:01 - 0:04
    Una gema, ¡una hermosa y dulce gema!
  • 0:04 - 0:08
    Pero sabes que sería mejor tener todo una fila de gemas que tener sólo una.
  • 0:08 - 0:13
    Y por supuesto, ahora sabemos que la mejor manera de hacer una fila de gemas sería con un ciclo.
  • 0:13 - 0:16
    Así que usemos un ciclo para dibujar 12 gemas en una fila.
  • 0:16 - 0:20
    Vamos a ir de izquierda a derecha de la pantalla.
  • 0:20 - 0:22
    Algo así. Entonces éste será un ciclo
  • 0:22 - 0:31
    "for" definimos la variable "i" igual a cero, "i" es menor que doce, "i" más más.
  • 0:31 - 0:35
    Y luego tomamos esta línea y la movemos aquí dentro.
  • 0:35 - 0:40
    Ok, ahora tenemos 12 gemas pero en realidad están todas apiladas, una encima de otra.
  • 0:40 - 0:43
    Recuerda que queremos que estén a lo largo de la pantalla.
  • 0:43 - 0:46
    Esto significa que queremos que la "x" cambie cada vez.
  • 0:46 - 0:49
    Ahora "x" es igual a 36, pero queremos que sea diferente cada vez.
  • 0:49 - 0:52
    Esto significa que queremos que "x" dependa de "i".
  • 0:52 - 0:56
    Entonces lo que podemos hacer es simplemente escribir: "i" por 36.
  • 0:56 - 1:02
    Así que la primera "x" es 0, luego 36, luego 72, etc. etc.
  • 1:02 - 1:05
    ¡Genial! Ahora tenemos una fila de gemas.
  • 1:05 - 1:08
    Y esto me recuerda aquellas escenas de Indiana Jones o Aladino,
  • 1:08 - 1:11
    donde el héroe descubre un tesoro enterrado lleno de joyas,
  • 1:11 - 1:14
    pero ellos generalmente descubren más joyas que esto.
  • 1:14 - 1:17
    ¡No sólo una fila de gemas sino un montón de joyas!
  • 1:17 - 1:22
    Entonces, ¿en realidad cómo podemos hacer gemas
  • 1:22 - 1:24
    que llenen toda la pantalla?
  • 1:24 - 1:30
    Bueno, podemos empezar por repetir este ciclo "for", copiándolo y pegándolo,
  • 1:30 - 1:34
    y luego cambiando esta "y" cada vez.
  • 1:34 - 1:37
    Y aquí la cambiamos a 60, luego a 90. ¿Ok?
  • 1:37 - 1:42
    Así que ahora tenemos tres renglones de gemas, y eso está bien.
  • 1:42 - 1:45
    Pero eso se está volviendo aburrido porque todo lo que estoy haciendo
  • 1:45 - 1:49
    es copiar y pegar, y cambiar esta cosa de aquí.
  • 1:49 - 1:53
    Y normalmente en el pasado cuando nos encontrábamos escribiendo un código repetitivo como éste
  • 1:53 - 1:57
    habríamos dicho: "Oh, creo que sería mejor usar un ciclo".
  • 1:57 - 1:59
    Pero ya estamos usando un ciclo.
  • 1:59 - 2:04
    Así que ¿cuál es la solución para evitar escribir todo esto? Me refiero a copiar y pegar repetidamente.
  • 2:04 - 2:09
    Bueno, la solución es usar lo que llamamos ciclos anidados. Un ciclo dentro de otro.
  • 2:09 - 2:12
    Así que lo que vamos a hacer es un ciclo externo,
  • 2:12 - 2:15
    que va a recorrer la pantalla de arriba a abajo,
  • 2:15 - 2:19
    y luego nuestro ciclo interno es el que va ocuparse de lo que está haciendo ya,
  • 2:19 - 2:22
    que es recorrer de izquierda a derecha.
  • 2:22 - 2:24
    Déjenme mostrarles lo que quiero decir.
  • 2:24 - 2:30
    Escribimos "for" y usaremos una variable diferente, la "j", hemos estado usando "i",
  • 2:30 - 2:37
    entonces, "for", para la variable "j" igual a 0, "j" es menor que 13, "j" más más.
  • 2:37 - 2:41
    Ok, éste es nuestro ciclo externo, encargado de recorrer de arriba a abajo.
  • 2:41 - 2:48
    y luego tomamos uno de nuestros ciclos "for" anteriores y lo ponemos aquí dentro,
  • 2:48 - 2:53
    arreglamos la indentación y borramos estos ciclos anteriores. Ok.
  • 2:53 - 2:58
    Ahora tenemos todas las gems apiladas en la misma fila.
  • 2:58 - 3:01
    Ahora, el punto es cambiar la "y", ¿cierto?
  • 3:01 - 3:04
    Eso era lo que estábamos cambiando cuando copiábamos y pegábamos,
  • 3:04 - 3:06
    y ahora la "y" siempre es igual a 90.
  • 3:06 - 3:09
    Queremos cambiar la "y" para cada renglón.
  • 3:09 - 3:15
    Así que de la misma manera que "x" depende de "i", queremos que la "y" dependa de "j".
  • 3:15 - 3:25
    Entonces podemos cambiar esto de alguna manera, en que la "y" sea, digamos "j" por 30.
  • 3:25 - 3:30
    ¡Tan tan! ¡Yeah! ¡Muchas gemas!
    ¡Muy bien!
  • 3:30 - 3:32
    Vamos a revisar una vez más cómo funciona esto.
  • 3:32 - 3:38
    El ciclo externo crea esta variable "j" y la incrementa hasta 13.
  • 3:38 - 3:44
    Y en cada corrida de este ciclo externo se ejecuta este ciclo interno.
  • 3:44 - 3:48
    Este ciclo interno crea la variable "i" que se incrementa hasta 12.
  • 3:48 - 3:55
    Y en cada corrida del ciclo interno, dibuja una imagen en "x" y "y" que están basadas en "i" y "j".
  • 3:55 - 3:59
    Y por eso esta "i" cambia más frecuentemente que la "j".
  • 3:59 - 4:05
    Para tratar de entender esto un poco mejor, vamos a visualizar los valores de "i" y "j".
  • 4:05 - 4:09
    Entonces lo que voy a hacer es comentar esta imagen,
  • 4:09 - 4:12
    seleccionar un color de relleno,
  • 4:12 - 4:17
    y voy a usar un comando "text" para mostrar el valor de "j", así que "text(j..."
  • 4:17 - 4:22
    y luego lo voy poner en el lugar apropiado. Ok.
  • 4:22 - 4:25
    Ahora podemos ver que "j" va de 0 a 12.
  • 4:25 - 4:32
    Básicamente éstas son las posiciones de los renglones de nuestras gemas.
  • 4:32 - 4:35
    Y ahora visualizaremos "i" y nos daremos cuenta cómo cambia.
  • 4:35 - 4:42
    Así que para "i" vamos a seleccionar un color diferente.
  • 4:42 - 4:46
    Y luego vamos a poner a "i" en algún lugar.
  • 4:46 - 4:50
    Y cambiaremos la "x" para que vaya a través de la pantalla.
  • 4:50 - 4:54
    Haremos lo mismo para la "y". Ok.
  • 4:54 - 5:00
    Ahora podemos ver que la "i" va de 0 a 11.
  • 5:00 - 5:05
    Y la "i", como les había dicho, cambia más frecuentemente.
  • 5:05 - 5:09
    Y esta línea de código se ejecuta muchas más veces que esta otra.
  • 5:09 - 5:14
    Porque esta línea de código es ejecutada en cada corrida del ciclo "for" interno,
  • 5:14 - 5:19
    mientras que esta línea de código se ejecuta solamente en cada corrida del ciclo externo.
  • 5:19 - 5:22
    Así que espero que esta visualización de "i" y "j"
  • 5:22 - 5:26
    ayude a entender mejor lo que está pasando con estos ciclos anidados.
  • 5:26 - 5:30
    Ahora traigamos de regreso nuestras gemas, ¡porque están geniales!
  • 5:30 - 5:34
    Así que hay muchas cosas que puedes hacer con ciclos anidados.
  • 5:34 - 5:37
    Si tan sólo piensas en todo lo que en el mundo
  • 5:37 - 5:40
    se ve como una cuadrícula bidimensional, como un tablero de ajedrez, como un edredón,
  • 5:40 - 5:44
    las estrellas de la bandera de EU, patrones interesantes y tapices.
  • 5:44 - 5:47
    Deja volar tu imaginación, juega con este código,
  • 5:47 - 5:50
    podría ser cambiando la imagen.
  • 5:50 - 5:54
    ¡Yo voy a empezar cambiándola por un corazón!
  • 5:54 - 5:59
    !Para enseñarte cuánto amo los ciclos anidados!
Title:
Ciclos For Anidados (Versión en Video)
Description:

more » « less
Video Language:
English
Duration:
06:00

Spanish, Mexican subtitles

Revisions