Programação para Iniciantes com Blocos
Capítulo 6
>
Nível 4
Objetivo
Limpe algumas ervas daninhas na passagem entre os prédios usando condições aninhadas em loops.
Há ervas daninhas crescendo na passagem entre os prédios. Seria uma boa ideia recolher todas as ervas daninhas e descartá-las. Há maneiras de automatizar esse processo usando condições dentro de loops. Há vários blocos no editor que estão desativados e que você pode ativar para preencher as lacunas.
Crie uma variável chamada bag e defina seu valor como 0 usando o bloco set variable.

Use um loop while com uma condição para automatizar o processo; insira um bloco comparison dentro dele. Defina o bloco de comparação para verificar se bag é menor que 10, ajustando o menu suspenso para >.

Dentro do loop, adicione um bloco move forward e arraste o bloco change variable do menu Variables. Defina o menu suspenso para bag e o balão de número para 1.

Ao usar uma condição no loop while, ele continuará enquanto a condição for verdadeira. Cada ciclo de repetição adiciona uma erva daninha a bag e o loop para automaticamente quando bag atingir dez (10).
Caminhe até a primeira marca X escura e encare a caixa; nas duas caixas posicionadas, vamos despejar as ervas daninhas que coletamos. Use um loop for com o bloco place sobre as marcas X. A distância (passos) entre cada recipiente é desigual, pois há uma lacuna entre eles. Ao usar blocos if aninhados dentro do loop, você pode ignorar parte do código quando uma condição for atendida.
Use um bloco for com a variável x de 0 até 2, incrementando de 1. Dentro do loop, adicione um bloco move forward, em seguida, use um bloco if configurado com um bloco comparison. Dentro do bloco comparison, defina o primeiro campo como x, o menu suspenso para diferente de (≠) e o valor numérico para 1.

Habilite os blocos desativados dentro do bloco if e, no bloco place, preencha o bloco operators para definir a quantidade de ervas daninhas a depositar nos recipientes. Precisamos colocar metade das ervas daninhas coletadas e armazenadas na variável bag em cada recipiente. Para isso, insira o bloco de variável bag do menu Variables no primeiro campo do bloco operators, defina o menu suspenso como % e coloque 2 no balão de número.

Somente quando x for diferente de 1 (ou seja, quando x for 0 ou 2), o código para virar à direita, depositar as ervas daninhas e virar à esquerda será executado. Desta forma, você pula a iteração do meio (quando x é igual a 1) para evitar a lacuna entre os recipientes.
Depois de coletar e depositar as ervas daninhas no local correto, alcance a saída marcada por uma estrela para completar o nível.