Hablemos de ciclos. Aquí tengo un ciclo "while" con unas pocas líneas de código, puedo escribir este mensaje hasta el fondo de la pantalla.
Si cambio el mensaje como lo hago aquí, ya sabes, para mejorarlo,
todo esto cambia.
Así que ¿cómo funciona esto? Bueno, podemos revisar este código en un momento.
Pero primero vamos a regresarnos un poco y pensar cómo escribiríamos este programa
usando sólo lo que sabemos hasta ahora sin utilizar los ciclos.
Así que para hacer eso, en realidad vamos a escribir mucho texto una y otra vez ¿cierto?
Vamos a decir, "text(message..." y voy ponerlo en primer lugar, y ahora sólo es cuestión de repetir esto
suficientes veces hasta que lleguemos hasta abajo.
Y eso nos va a costar mucho trabajo, ¿cierto?
Porque la parte de abajo está muy lejos. Y esto se vuelve peor si tú
me señalas que esta posición no debe ser 70, en realidad debe estar más cerca
debe ser 60. Y ahora esto afecta a este porque también debe ser más pequeño
y también afecta todos los demás textos que tengamos.
Y de hecho, esto nos va a tomar más tiempo hasta llegar abajo.
Así que es realmente una pena, pero afortunadamente tenemos ciclos que nos ayudan.
A partir de ahora, cada vez que veas un código repetitivo como éste, tu primer pensamiento debe ser:
¿Podría usar un ciclo? Un ciclo nos permitirá repetir esta porción de código una y otra y
otra vez, haciendo sólo pequeños cambios cada vez.
Así que aquí tenemos la manera de reescribir este código con un ciclo. Para iniciar necesitamos escribir: "while",
los paréntesis, y las llaves. Vamos a usar este mensaje, pero...
esto es porque no hemos terminado todavía. No te preocupes, se irá cuando terminemos.
Así que cada vez que escribas un ciclo necesitas responder tres preguntas clave.
Y aquí están...
Entonces la primera pregunta es: ¿Qué es lo que quiero repetir?
Y lo que sea que quiera repetir debe ir entre las llaves.
Así que en este caso queremos repetir la función "text", entonces vamos a ponerla aquí.
Pero es un poco absurdo ¿no? Porque vamos a repetir simplemente
la misma llamada a la función "text" una y otra vez, lo cual no tienen ninguna razón, necesitamos que algo cambie.
Esto nos lleva a la segunda pregunta: ¿Qué es lo que quiero cambiar cada vez?
Entonces lo que queremos cambiar es la posición de "y", ¿cierto? Queremos que sea 60 y luego queremos
que sea 80. Así que haremos una variable para eso.
La llamaremos "y" porque es la posición de "y". Así que vamos a declarar la variable
aquí arriba. Y la voy a inicializar en 40. Y ahora finalmente, lo que necesitamos hacer es
cambiar "y". Podemos hacer eso aquí abajo, y decimos "y" es igual a "y" más 20,
y "y" será más grande cada vez. Y de hecho, podemos usar
aquí nuestras lecciones sobre cómo escribir incrementos. Continuamos
y usamos un atajo para el incremento. Esto es fantástico, ahora
necesitamos hacer la tercera pregunta: ¿Hasta cuándo debemos repetir esto?
Bueno, queremos hacer esto una y otra y otra vez, pero en realidad no queremos que sea para siempre, ¿cierto?
Si lo hacemos para siempre, en primer lugar es tener que esperar mucho tiempo, y en segundo lugar esto podría bloquear tu navegador.
Pero afortunadamente no es así. En realidad sólo
lo queremos hacer hasta llegar a la parte inferior de la pantalla, ¿cierto? Lo que significa que lo queremos hacer
siempre y cuando "y" sea menor que 400. Entonces ponemos eso aquí, y
¡Terminamos! tenemos este mensaje escrito hasta abajo de la pantalla.
Y puedes ver que esta forma de hacerlo es más simple que nuestro intento anterior, que
nos tomó casi lo mismo escribirlo, pero no teníamos ni la cuarta parte terminada.
Así que nos podemos deshacer de eso, y aquí tenemos nuestro programa.
Ahora vamos a tratar de entender mejor qué es lo que está pasando. Para hacerlo, voy a
imprimir cada vez. Voy a decir "y is now" ("y" es ahora) y aquí abajo
voy a poner "y" en la parte final del mensaje para que podamos verlo.
Entonces en este momento el valor está cambiando en 20 cada vez, y podemos cambiar
esto solamente cambiando esta variable aquí. Pueden hacer que cambie, en 50
cada vez. Y ahora está cambiando 50 cada vez. Del mismo modo,
puedes continuar y jugar con estos otros valores y cambiarlos.
Y puedes ver cómo afecta eso, ya sabes, cuándo el programa debe terminar.
Así que para entender esto, puedes pensar en esto como una especie
de sentencia "if". Aquí tenemos nuestra expresión booleana
justo como lo aprendimos. Y luego, hacemos que esto sea el cuerpo de la sentencia
sólo si la expresión booleana es verdadera, de otra manera saltamos al final.
Pero lo que es interesante es que en el ciclo "while" tenemos en realidad
una cosa secreta el final que dice "regresa al principio del ciclo".
Y lo que esta instrucción secreta significa es que
en lugar de seguir adelante, como cuando usamos la sentencia "if",
cada vez que se ejecuta el cuerpo del ciclo regresamos al principio y revisamos
si la condición sigue siendo verdadera. Y si es verdadera seguimos adelante para repetir
el ciclo una vez más. Y cómo ya te habrás imaginado, la segunda vez que repetimos, vamos a hacer la misma cosa...
vamos a comprobar, ya sabes, vamos a ir al inicio y revisar ¿"y" sigue siendo menor que
279? Y si es así, repetiremos una vez más y seguiremos revisando.
Y si no lo es, regresamos al inicio aquí, y finalmente,
salimos del ciclo y seguimos adelante con nuestro programa.
Grandioso, hay muchas maneras interesantes de usar los ciclos, y vamos a aprender sobre eso pronto, pero
por ahora, tuvimos un comienzo excelente.