Pular para o conteúdo
Jogos Digitais
Nesta página
  1. Objetivos de aprendizagem
  2. Pré-requisitos
  3. Materiais
  4. Conceitos
  5. Exemplos
  6. Regras do boletim deste projeto (inventadas para a aula)
  7. Tutorial passo a passo
  8. O código completo
  9. Explicação do código
  10. Resultado esperado (testado nos 7 casos)
  11. Problemas comuns
  12. Exercício guiado
  13. Desafio individual
  14. Desafio avançado (opcional)
  15. Critérios de avaliação
  16. Checklist de conclusão
  17. Extensão

Módulo 1 · Aula 1.4 · Condicionais e operadores lógicos

Carga horáriaDificuldadeFerramentaCompetências
8 h/a⭐⭐ScratchC1, C2

Objetivos de aprendizagem

  1. Usar "se ... então" e "se ... então ... senão".
  2. Encadear condições (um "se/senão" dentro do outro) na ordem certa.
  3. Combinar condições com e, ou e não.
  4. Planejar casos de teste que passem por todos os caminhos do código.

Pré-requisitos

Aula 1.3.

Materiais

Computador; tabela de casos de teste (papel); projeto 1-4-boletim.sb3 (professor).

Conceitos

  • Condição: pergunta de sim ou não. No Scratch tem forma de hexágono: "( ) > ( )", "( ) < ( )", "( ) = ( )", "tocando em [ ]?".
  • "se < > então": faz os blocos de dentro só se a condição for verdadeira.
  • "se < > então ... senão": escolhe um de dois caminhos. Sempre executa exatamente um deles.
  • Encadear: colocar um "se/senão" dentro do "senão" de outro. A primeira condição verdadeira vence, então a ordem importa.
  • e: verdadeiro só se as duas forem verdadeiras.
  • ou: verdadeiro se pelo menos uma for verdadeira.
  • não: inverte (verdadeiro vira falso).
  • O Scratch não tem "maior ou igual". Para "nota ≥ 6" usamos o contrário: "não (nota < 6)", ou o caminho do "senão" de "nota < 6".
ABA e BA ou Bnão A
VVVVF
VFFVF
FVFVV
FFFFV

Exemplos

  • Jogo: "se tocando em moeda e não está morto, ganha ponto".
  • Porta da fase: "se tem chave ou é o modo fácil, a porta abre".

Regras do boletim deste projeto (inventadas para a aula)

  1. Mais de 10 faltas: reprovado por faltas (vale mesmo com nota alta).
  2. Senão, nota menor que 6: recuperação.
  3. Senão, nota maior que 8 e menos de 3 faltas: aprovado com louvor.
  4. Senão: aprovado.

Tutorial passo a passo

Parte A. Planejar os casos de teste (40 min)

  1. Antes de programar, preencha a coluna "esperado" da tabela abaixo usando as regras. Cada caso testa um caminho diferente.
Casonotafaltasesperado
1815
250
3100
495
571
6610
7911

Parte B. Montar (90 min)

  1. Projeto novo boletim-v1.sb3. Troque o gato pelo Parrot (ou mantenha o gato) e chame o ator de Professor.
  2. Crie as variáveis nota, faltas e situacao.
  3. Monte o roteiro da bandeira: sorteia nota e faltas e transmite a mensagem nova avaliar.
  4. Monte o roteiro "quando eu receber [avaliar]" com os "se/senão" encaixados um dentro do senão do outro (código abaixo). Monte de fora para dentro: primeiro o "se/senão" das faltas, depois arraste o segundo para dentro do "senão" dele, e assim por diante.

Parte C. Testar cada caso (60 min)

  1. Para testar um caso específico sem depender do sorteio, deixe três blocos soltos na área de código: "mude [nota] para (8)", "mude [faltas] para (15)" e "transmita [avaliar]". Clicar em um bloco solto executa só ele. Clique nos três, nessa ordem. Para o próximo caso, troque os números e clique de novo.
  2. Confira a fala do professor com a coluna "esperado". Repita para os 7 casos.

O código completo

Ator Professor:

quando ⚑ for clicado
mude [nota] para (número aleatório entre (0) e (10))
mude [faltas] para (número aleatório entre (0) e (15))
transmita [avaliar]

quando eu receber [avaliar]
se <(faltas) > (10)> então
    mude [situacao] para (reprovado por faltas)
senão
    se <(nota) < (6)> então
        mude [situacao] para (recuperação)
    senão
        se <<(nota) > (8)> e <(faltas) < (3)>> então
            mude [situacao] para (aprovado com louvor)
        senão
            mude [situacao] para (aprovado)
        fim
    fim
fim
diga (junte (Nota ) com (junte (nota) com (junte (, faltas ) com (junte (faltas) com (junte (: ) com (situacao))))))

O "junte" dentro de "junte" monta a frase "Nota 8, faltas 2: aprovado".

Projeto pronto: ../projetos/1-4-boletim/1-4-boletim.sb3.

Explicação do código

  • Por que faltas vem primeiro? Porque a regra 1 vale "mesmo com nota alta". Se a nota fosse testada antes, um aluno com nota 10 e 15 faltas sairia "aprovado com louvor".
  • O caminho do "senão" de "nota < 6" já garante que a nota é 6 ou mais. Por isso o caso 6 (nota 6) cai em "aprovado".
  • O e exige as duas coisas: o caso 4 (nota 9, 5 faltas) não ganha louvor porque tem faltas demais.

Resultado esperado (testado nos 7 casos)

1 reprovado por faltas · 2 recuperação · 3 aprovado com louvor · 4 aprovado · 5 aprovado · 6 aprovado · 7 reprovado por faltas.

Problemas comuns

SintomaCausaSolução
Aluno com 15 faltas aparece aprovadotestou nota antes de faltasfaltas no primeiro "se"
Aparecem duas situações piscandousou vários "se" soltos em vez de encaixar no "senão"encaixar cada "se/senão" dentro do "senão" anterior
Nota 6 cai em recuperaçãousou "nota < 7" ou "> 6" no lugar erradorevisar a regra: recuperação é menor que 6
O "e" não encaixaarrastou o "e" para dentro de um espaço redondoo "e" encaixa só em espaço hexagonal

Exercício guiado

Troque o "e" por "ou" na regra do louvor e refaça o teste de mesa dos 7 casos. Quais mudam? Resposta: o caso 4 (9, 5) vira "aprovado com louvor" e o caso 5 (7, 1) também, porque 1 < 3.

Desafio individual

Crie uma 5ª situação: nota exatamente 10 e zero faltas = "destaque da turma". Em que posição do encadeamento ela precisa entrar?

Desafio avançado (opcional)

Reescreva a condição "faltas > 10" usando "não" e "<". Dica: maior que 10 é o mesmo que "não (faltas < 11)" para números inteiros.

Critérios de avaliação

  • Tabela de casos preenchida antes e confirmada depois.
  • Os 7 casos dão o resultado esperado.
  • O aluno justifica por que a regra das faltas vem primeiro.

Checklist de conclusão

Extensão

Escreva as regras de um jogo de tabuleiro que você conhece usando SE, SENÃO, E, OU. Exemplo: "SE tirou 6 OU tirou dois números iguais ENTÃO joga de novo".