Programación para principiantes con bloques
Capítulo 6
>
Nivel 4
Objetivo
Limpia algunas malas hierbas en el pasillo entre los edificios usando condiciones anidadas en bucles.
El pasillo entre los edificios tiene malas hierbas creciendo. Sería buena idea recoger todas las malas hierbas y desecharlas. Hay formas de automatizar este proceso utilizando condiciones dentro de bucles. Hay varios bloques en el editor que están deshabilitados y que puedes habilitar para rellenar los huecos.
Crea una variable llamada bag y asígnale el valor 0 usando el bloque set variable.

Utiliza un bucle while con una condición para automatizar el proceso; inserta un bloque comparison dentro de él. Configura el bloque comparison para comprobar si bag es menor que 10, estableciendo el desplegable en >.

Dentro del bucle, añade un bloque move forward y arrastra y suelta el bloque change variable desde el menú Variables. Establece el desplegable en bag y la burbuja de número en 1.

Al usar una condición en el bucle while, el bucle continuará mientras la condición sea verdadera. Cada ciclo del bucle añade una mala hierba a la bolsa y el bucle se detiene automáticamente cuando bag alcanza diez (10).
Camina hasta la primera marca X oscura y colócate de cara a la caja; en las dos cajas posicionadas vaciaremos las malas hierbas que recogimos. Usa un bucle for con el bloque place en las marcas X. La cantidad de pasos entre cada contenedor es desigual, ya que hay un espacio entre ellos. Al usar bloques if anidados dentro del bucle, puedes omitir cierto código cuando se cumple una condición.
Usa un bloque de bucle for con la variable x que vaya de 0 a 2 e incremente en 1. Dentro del bucle, coloca un bloque move forward y luego usa un bloque if configurado con un bloque comparison. Dentro del bloque comparison, ajusta la primera casilla a x, el desplegable a no igual (≠) y el valor numérico a 1.

Habilita los bloques deshabilitados dentro del bloque if y, en el bloque place, completa el bloque operators para establecer la cantidad de malas hierbas a depositar en los contenedores. Necesitamos poner la mitad de las malas hierbas recogidas y almacenadas en la variable bag en cada contenedor. Para ello, inserta el bloque de variable bag desde el menú Variables en la primera casilla del bloque operators, establece el desplegable en % e inserta 2 en la burbuja de número.

Solo cuando x no sea igual a 1 (es decir, cuando x sea 0 o 2), se ejecutará el código para girar a la derecha, colocar las malas hierbas y girar a la izquierda. De esta manera se omite la iteración intermedia (cuando x es igual a 1) para evitar el espacio entre contenedores.
Una vez que hayas recogido y colocado las malas hierbas en la ubicación adecuada, llega a la salida marcada con una estrella para completar el nivel.