--- title: Semáforo sidebar_position: 5 --- # Semáforo
Thumbnail da atividade Semáforo

O Semáforo é uma atividade especialmente valiosa para introduzir programação orientada a eventos e coordenação entre regras simultâneas. Seu contexto é socialmente reconhecível: carros e pedestres precisam compartilhar o espaço com segurança. Isso faz com que o estudante compreenda rapidamente que programar, nesse caso, não é apenas acionar cores, mas sincronizar comportamentos para evitar conflito.

Ao contrário de atividades baseadas apenas em deslocamento, aqui a lógica temporal ganha protagonismo. O estudante precisa respeitar ordem, intervalos de espera, dependência entre dois sistemas e, em fases posteriores, sinais adicionais como luz piscante e som. É um contexto muito fértil para discutir estados, transições e regras de segurança.

## O que esta atividade ensina sobre programação O Semáforo ajuda a entender que muitos programas controlam sistemas que mudam de estado ao longo do tempo. A cada comando, o sistema assume uma nova condição: verde, amarelo, vermelho, pedestre liberado, pedestre em alerta, som ativo ou inativo. Isso aproxima o estudante da lógica de máquinas de estado, mesmo sem usar esse vocabulário logo de início. Além disso, a atividade reforça a importância da ordem e da sincronização. Se um comando está correto, mas fora da sequência, o resultado ainda pode ser perigoso ou inválido. Essa percepção é pedagogicamente importante porque mostra que, em programação, não basta saber quais ações usar; é preciso também saber quando e em que relação elas devem ocorrer. ## Mediação pedagógica Uma abordagem produtiva é pedir que a turma descreva o comportamento do sistema antes de montá-lo em blocos: quando o carro passa, quando o pedestre espera, quando o pedestre atravessa e quando recebe aviso de encerramento. Essa verbalização ajuda a transformar uma rotina do cotidiano em algoritmo. Também é interessante explorar a ideia de segurança lógica. Perguntas como “o que acontece se os dois estiverem verdes ao mesmo tempo?” ou “por que o amarelo existe?” ajudam a mostrar que regras intermediárias fazem parte da confiabilidade de um sistema programado. ## Progressão das fases | Fase | Nome | O que o estudante pratica | | --- | --- | --- | | 1 | Controle básico do semáforo de carros | ordenar corretamente as cores do semáforo principal | | 2 | Controle básico com tempo | associar mudança de estado a intervalos temporais explícitos | | 3 | Controle do semáforo de pedestres | sincronizar dois subsistemas dependentes entre si | | 4 | Semáforo de pedestres com luz piscante | acrescentar estado intermediário de alerta antes do fechamento | | 5 | Semáforo com sons | integrar sinal visual e sonoro em uma sequência coordenada | ## Quando usar Esta atividade é muito adequada quando o objetivo é discutir ordem temporal, eventos e coordenação entre múltiplas regras. Ela também funciona bem em aulas que queiram aproximar programação de problemas de cidadania, mobilidade urbana e sistemas automatizados do cotidiano. ## Referências - Máquina de estados finitos: https://pt.wikipedia.org/wiki/M%C3%A1quina_de_estados_finitos - Fluxo de controle: https://pt.wikipedia.org/wiki/Fluxo_de_controle - Semáforo (sinalização): https://pt.wikipedia.org/wiki/Sem%C3%A1foro