¿Cómo saben las computadoras lo que tienen que hacer?
📌 En el bloque anterior nos preocupamos por aprender sobre las computadoras: para qué se inventaron, qué las diferencia de otros artefactos, cuáles son sus componentes fundamentales y algunos hechos históricos relacionados a ellas. En este bloque nos acercaremos al mundo de la programación para comprender cómo saben realmente las computadoras lo que tienen que hacer.
3. Tomando la decisión correcta
En el capítulo anterior resolvimos desafíos en los que podíamos indicarle a la computadora que repita un conjunto de instrucciones. En este capítulo te proponemos siete desafíos nuevos en los que vas a tener que descubrir y utilizar una nueva instrucción para lograr que los diferentes personajes alcancen su objetivo. ¿Están listos/as? Allá vamos…
Cuarto desafío
Resolvé los desafíos 14 a 17 inclusive de la secuencia con la que venías trabajando.
——————
Alternativas condicionales
¿Cómo te fue con los desafíos? ¿Cuál es la nueva instrucción que descubriste? En estos desafíos nuevamente, tuviste que crear programas para que los personajes se muevan por el laberinto y alcancen su objetivo. Pero… ¿se repetían siempre los mismos movimientos? No! Porque el camino ya no seguía un mismo patrón sino que variaba, por ejemplo, en algún momento el personaje debía girar y realizar más (o menos) pasos.
Aún así, tuvimos disponible una nueva instrucción para saber si el camino seguía hacia la izquierda o a la derecha y continuar avanzando: la instrucción “si”. Esta nueva instrucción nos permite realizar instrucciones sólo si se cumple una condición. Por ejemplo, solo debemos girar a la izquierda si hay camino en esa dirección.
Por ejemplo, en el desafío 14 la computadora debe repetir la pregunta "¿hay camino a la izquierda?" (y girar en caso de que sea cierto) para que el personaje no se salga del camino.
En estos desafíos siempre había que continuar el camino en la misma dirección, pero ¿qué sucede si personaje puede avanzar en cualquiera de las dos direcciones? Te proponemos los últimos desafíos para descubrir una instrucción similar a la que acabamos de utilizar.
Quinto desafío
Resolvé los desafíos 18 a 20 inclusive de la secuencia.
——————
Más alternativas condicionales
¿Cómo te fue con los últimos desafíos? ¿Qué tiene de diferente la nueva instrucción? En este caso, la instrucción “si-si no” nos da la posibilidad de realizar instrucciones cuando no se cumpla la condición, a diferencia del bloque "si" donde solo podemos realizar instrucciones cuando se cumple la condición.
Esta nueva instrucción es útil cuando estamos ante dos alternativas posibles y debemos realizar acciones en cada uno de los casos, por ejemplo, en el desafío 18 teníamos dos alternativas posibles: hay un camino adelante o no. En el primer caso, la instrucción a realizar es "Avanzar" mientras que en el otro caso (cuando no hay un camino adelante) es "Girar a la izquierda".
Es importante observar que estas dos nuevas instrucciones son útiles cuando el problema puede presentar varias alternativas posibles durante la ejecución y necesitamos indicarle a la computadora las decisiones que debería tomar para alcanzar el objetivo. Por ejemplo, cuando, si no conocemos el camino de antemano, y no tiene un patrón definido, debemos indicarle a la computadora cómo decidir hacia donde debe avanzar el personaje en cada paso.
La clave de este capítulo
En general las computadoras procesan información de la más variada y es indispensable que sepan cuáles son las decisiones que tienen que tomar para poder lograr su propósito. Estas decisiones no ocurren por arte de magia en la computadora sino que están definidas en los programas, por ejemplo, cuando la aspiradora robot tiene que cambiar automáticamente su recorrido porque está frente a una pared, cuando la aplicación nos pide una contraseña y tiene que decidir si nos da acceso o no, o cuando queremos descargar una aplicación y el celular nos informa que no tenemos espacio disponible.
Las computadoras son muy buenas (¡y rápidas!) ejecutando instrucciones, repitiéndolas y tomando decisiones. Además, pueden interpretar un montón de instrucciones más, pero la gran mayoría de las aplicaciones con las que interactuamos utilizan estas instrucciones para funcionar.
En el siguiente capítulo vamos a descubrir algunas instrucciones más que podemos utilizar para programar. Para eso, te proponemos programar un videojuego muy sencillo que funciona a través de la pantalla (o el mouse). ¿Estás preparado/a? ¡Nos vemos allá!