Nem sempre nós sabemos quantas vezes nosso código precisa ser repetido. No exemplo anterior nós sabíamos, uma vez que para calcular a média de 20 notas precisamos ler 20 notas.
Contudo, se estabelecermos que uma nota válida precisa obrigatoriamente estar no intervalo entre 0 e 10, quantas vezes precisamos repetir a leitura de uma nota até garantir que foi digitada uma nota válida?
A verdade é que não sabemos. Pode ser digitada uma nota válida já na primeira vez, como também podem ser digitadas 3 ou 4 notas inválidas para então digitar uma nota válida.
Neste caso não é possível utilizar a estrutura de repetição PARA, uma vez que não sabemos quantas vezes será executado.
Perceba que no exemplo apresentado a leitura da nota precisa ser repetida ENQUANTO a nota digitada for menor que zero ou maior que 10, ou seja, ENQUANTO a nota for inválida. Aí chagamos à nossa segunda estrutura de repetição, a estrutura ENQUANTO. Repetir um trecho do nosso algoritmo ENQUANTO uma determinada condição for verdadeira.
No SCRATCH a estrutura ENQUANTO é representada pela repetição “repita até que …”, ou seja, repita até que uma determinada condição seja satisfeita.
Preste bastante atenção no texto escrito neste bloco: “repita até que …”
Enquanto o teste for falso, será repetido tudo que estiver dentro desta instrução. Quando o teste for verdadeiro, a repetição será então finalizada.
Lembre-se que aqui no Scratch não existe o operador maior ou igual (>=) e menor ou igual (<=). Assim, precisamos fazer quatro operações para saber se a nota digitada é válida ou não.