Módulo 1 · Aula 1.5 · Repetições
| Carga horária | Dificuldade | Ferramenta | Competências |
|---|---|---|---|
| 8 h/a | ⭐⭐ | Scratch | C1, C2 |
Objetivos de aprendizagem
- Escolher entre "repita ( ) vezes", "sempre" e "repita até que < >".
- Fazer um pulo suave com duas repetições.
- Usar uma variável como trava para impedir ações repetidas (pulo duplo).
Pré-requisitos
Aulas 1.3 e 1.4.
Materiais
Computador; projeto 1-5-pulo-do-gato.sb3 (professor).
Conceitos
| Bloco | Quando usar | Exemplo |
|---|---|---|
| "repita (10) vezes" | sei quantas vezes | subir 10 passinhos no pulo |
| "sempre" | até o jogo acabar | ler o teclado o tempo todo |
| "repita até que < >" | até acontecer algo | correr até chegar na borda |
- Laço (loop): outro nome para repetição.
- Animação por repetição: "adicione 12 a y" uma vez teleporta 12; dez vezes seguidas, uma por quadro, parece um movimento suave.
- Trava (flag): variável que vale 1 enquanto algo está acontecendo e 0 quando terminou. Antes de começar, o código confere a trava.
Exemplos
- Pular: subir 10 vezes, descer 10 vezes.
- Piscar quando leva dano: "repita 6 vezes: esconda, espere 0.1, mostre, espere 0.1".
- Inimigo que patrulha: "sempre: ande até a borda, vire".
Tutorial passo a passo
Parte A. Andar com "sempre" (30 min)
- Projeto novo
pulo-do-gato-v1.sb3. Gato com tamanho 60. Crie a variávelpulando. - Monte o roteiro 1 (código abaixo): a bandeira posiciona o gato e um "sempre" lê as setas.
Parte B. O pulo (60 min)
- Monte o roteiro 2: "quando a tecla [espaço] for pressionada" com dois "repita (10) vezes".
- Rode e aperte espaço. Agora aperte espaço várias vezes rápido: o gato sobe cada vez mais e não volta para o chão certinho. É o pulo duplo.
- Corrija com a trava: envolva tudo em "se <(pulando) = (0)> então", com "mude pulando para 1" no começo e "mude pulando para 0" no fim (código abaixo).
- Teste de novo apertando espaço rápido: o gato sempre volta exatamente para y = -100.
Parte C. Corrida até a borda (30 min)
- Monte o roteiro 3, com a tecla p e "repita até que <(posição x) > (200)>".
O código completo
Ator Gato:
quando ⚑ for clicado
vá para x: (-150) y: (-100)
mude [pulando] para (0)
sempre
se <tecla [seta para direita] pressionada?> então
adicione (5) a x
fim
se <tecla [seta para esquerda] pressionada?> então
adicione (-5) a x
fim
fim
quando a tecla [espaço] for pressionada
se <(pulando) = (0)> então
mude [pulando] para (1)
repita (10) vezes
adicione (12) a y
fim
repita (10) vezes
adicione (-12) a y
fim
mude [pulando] para (0)
fim
quando a tecla [p] for pressionada
diga (Corrida até a borda!) por (1) segundos
repita até que <(posição x) > (200)>
adicione (8) a x
fim
diga (Cheguei!) por (1) segundosProjeto pronto: ../projetos/1-5-pulo-do-gato/1-5-pulo-do-gato.sb3.
Explicação do código
- 10 × 12 = 120 para cima e 10 × (-12) = -120 para baixo: o gato volta exatamente onde estava.
- Cada volta de um laço leva um quadro (1/30 de segundo), então o pulo dura cerca de 20 quadros, 2/3 de segundo.
- Sem a trava, cada espaço inicia um novo roteiro de pulo em paralelo com o anterior.
- O "sempre" e o pulo rodam ao mesmo tempo: dá para andar enquanto pula.
Resultado esperado (testado)
No meio do pulo o gato está acima de y = -100; depois de apertar espaço três vezes seguidas ele volta exatamente para y = -100; a seta anda; a tecla p leva o gato até passar de x = 200.
Problemas comuns
| Sintoma | Causa | Solução |
|---|---|---|
| O gato sobe e não desce | o segundo "repita" usa 12 positivo | usar -12 |
| O gato pula "teleportando" | usou "adicione 120 a y" sem repetição | usar "repita 10" com 12 |
| Pulo duplo | falta a trava pulando | Parte B, passo 5 |
| O gato nunca mais pula | esqueceu "mude pulando para 0" no fim | colocar depois do segundo "repita" |
| A corrida nunca termina | usou "posição x < 200" | a condição é a de parada: "> 200" |
Exercício guiado
Faça o gato piscar 5 vezes quando a tecla h (de "hit", dano) for apertada: "repita (5) vezes: esconda, espere (0.1) seg, mostre, espere (0.1) seg".
Desafio individual
Faça um pulo mais natural: o gato sobe rápido no começo e devagar no topo. Dica: use uma variável velocidade que começa em 15 e diminui 1 a cada volta, "repita até que velocidade < 0".
Desafio avançado (opcional)
Faça o gato andar sozinho de um lado para o outro (patrulha) com "sempre", "se tocar na borda, volte" e "defina o estilo de rotação para [esquerda-direita]".
Critérios de avaliação
- O pulo é suave e volta ao chão.
- Não existe pulo duplo.
- O aluno explica quando usar cada tipo de repetição.
Checklist de conclusão
Extensão
Pense em três ações do seu dia que são "repita N vezes", três que são "repita até que" e uma que é "sempre".