---
title: Autômato
sidebar_position: 4
---

# Autômato

<div style={{ display: "flex", alignItems: "flex-start", gap: "16px", flexWrap: "wrap" }}>
	<img
		src={require("@site/static/images/atividades/programacao/automato-thumbnail.png").default}
		alt="Thumbnail da atividade Autômato"
		style={{ width: "280px", height: "280px", objectFit: "contain", flexShrink: 0 }}
	/>
	<div style={{ flex: 1, minWidth: "260px" }}>
		<p>O Autômato é uma atividade de navegação em labirintos que trabalha a construção gradual de algoritmos. Seu valor pedagógico está em tornar visível a passagem de soluções lineares para soluções estruturadas. O estudante começa com movimentos isolados, depois percebe que pode comprimir padrões com repetição e, por fim, precisa usar decisões para lidar com trajetos menos previsíveis.</p>
		<p>Esse percurso é particularmente importante na introdução à programação porque mostra por que estruturas de controle existem. Em vez de apresentar laços e condicionais como conteúdo abstrato, a atividade os torna necessários. O estudante sente o limite de uma solução puramente sequencial e, a partir daí, encontra sentido em usar repetição e seleção.</p>
	</div>
</div>

## O que esta atividade ensina sobre programação

O Autômato desenvolve, de maneira muito direta, a ideia de algoritmo como sequência organizada de ações para atingir um objetivo. Nas primeiras fases, o foco está na precisão do comando. Em seguida, entram laços para reduzir repetição desnecessária. Nas fases posteriores, as condicionais passam a ter função central, porque o estudante precisa decidir se há caminho livre, se deve virar ou continuar, e como adaptar o percurso ao labirinto.

Embora a interface seja simples, o ganho conceitual é relevante: a atividade aproxima o estudante de noções de controle de fluxo, tomada de decisão e decomposição de problemas em regras executáveis. Ela também é uma excelente base para discutir depuração, porque erros de lógica aparecem de forma concreta no caminho percorrido pelo personagem.

## Mediação pedagógica

Nesta atividade, é produtivo pedir que o estudante compare uma solução "bloco por bloco" com uma solução que usa repetição. Esse contraste ajuda a mostrar que programar não é apenas fazer funcionar, mas também identificar padrões e representá-los de modo mais claro.

Quando surgirem labirintos com bifurcações, uma mediação útil é perguntar quais informações o programa precisa observar antes de agir. Essa pergunta desloca o foco da tentativa e erro para a leitura do estado do problema, o que prepara a compreensão de condicionais de forma mais sólida.

## Progressão das fases

| Fase | Nome | O que o estudante pratica |
| --- | --- | --- |
| 1 | Primeiro Passo | compreender o efeito do comando básico de avançar |
| 2 | Primeira Curva | combinar deslocamento e rotação para alterar trajetória |
| 3 | Linha Reta | usar repetição para substituir sequência redundante |
| 4 | Escadaria | aplicar laços em trajetos diagonais com mudanças de direção |
| 5 | Torre | planejar percurso vertical e leitura espacial do mapa |
| 6 | Caminho em Bloco | introduzir condicional simples baseada em caminho livre |
| 7 | Labirinto Ramificado | decidir entre alternativas em percursos que se bifurcam |
| 8 | Caminho Complexo | lidar com trajeto mais longo mantendo legibilidade da solução |
| 9 | Labirinto Avançado | usar if/else para diferenciar ações conforme o contexto |
| 10 | Desafio Final | integrar movimentos, repetição e decisão em um labirinto completo |

## Quando usar

O Autômato é indicado para momentos em que a turma precisa consolidar a ideia de que blocos não são apenas comandos isolados, mas estruturas que organizam comportamento. Ele costuma funcionar muito bem depois de uma atividade mais descritiva, como Quebra-cabeças, e antes de atividades reativas mais complexas, como Aspirador ou Semáforo.

## Referências

- Google Blockly, o que é o Blockly?: https://developers.google.com/blockly/guides/get-started/what-is-blockly?hl=pt-br
- Fluxo de controle: https://pt.wikipedia.org/wiki/Fluxo_de_controle
- Máquina de estados finitos: https://pt.wikipedia.org/wiki/M%C3%A1quina_de_estados_finitos