Máquinas de estados: do semáforo ao jogo
Descrever comportamentos com estados e transições e implementá-los com programação por eventos.
Habilidades da BNCC
- EF09CO03Usar autômatos para descrever comportamentos de forma abstrata, automatizando-os com uma linguagem de programação. 📥 Baixar slides (PDF)
Objetivos de aprendizagem
- Descrever comportamentos com estados, eventos e transições.
- Desenhar o diagrama de um autômato simples.
- Implementar um autômato com programação orientada a eventos.
Materiais
- Cartões com nomes de estados
- Scratch (eventos e mensagens) ou micro:bit, se houver
Desenvolvimento
Tempo total previsto: 100 minutos.
- 10 minO semáforo
Que “estados” tem um semáforo? O que faz ele mudar de um para outro? Desenhe juntos: verde → amarelo → vermelho → verde, com o tempo como evento.
- 20 minMáquinas do dia a dia
Em grupos, desenhem o autômato de outro objeto: catraca de ônibus (travada/livre; eventos: cartão, empurrar), porta automática, máquina de refrigerante. Atenção: todo estado precisa saber o que fazer com cada evento.
- 15 minEncenação
Um grupo encena seu autômato: um aluno é a máquina com um cartão de estado e os colegas disparam eventos. A turma verifica se as transições estão completas.
- 40 minProgramando estados
No Scratch, as duplas implementam o semáforo ou um personagem com estados (parado, andando, pulando) controlado por teclas. Usem uma variável “estado” e eventos de tecla ou de mensagem.
- 15 minSocialização
Mostrem os programas. Onde mais aparecem autômatos? Jogos, elevadores, validação de senhas.
Avaliação
Diagrama com estados e transições completos e programa coerente com o diagrama.