— Passei meu cartão duas vezes e o totem “travou”, reclamou um usuário do autoatendimento de uma biblioteca. A…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Usar autômatos para descrever comportamentos de forma abstrata automatizando-os através de uma linguagem de programação baseada em eventos.
Fonte: Base Nacional Comum Curricular (MEC).Questão
— Passei meu cartão duas vezes e o totem “travou”, reclamou um usuário do autoatendimento de uma biblioteca. A equipe que mantém o sistema explicou que ele foi programado por eventos, usando um autômato com estados de tela. O totem inicia em Cartão, mostrando “Aproxime seu cartão”. Quando ocorre o evento CartaoLido, o totem vai para Livro e mostra “Aproxime o livro”. Ao ocorrer LivroLido nesse estado, o totem vai para Recibo, emite um bip e, após alguns segundos, retorna para Cartão. O problema aparece quando, por engano, o evento CartaoLido acontece enquanto o totem já está no estado Livro: alguns testes fizeram o sistema voltar para Cartão e “perder” o empréstimo em andamento. A equipe quer ajustar apenas essa transição, mantendo o restante do comportamento. Com base no texto-base, identifique a regra de transição do autômato que deve ocorrer quando o evento CartaoLido acontece enquanto o totem está no estado Livro, evitando perder a etapa em andamento.
- A) Mudar do estado Livro para o estado Recibo ao ocorrer CartaoLido.
- B) Mudar do estado Livro para o estado Recibo após alguns segundos de CartaoLido.
- C) Mudar do estado Livro para o estado Cartão ao ocorrer CartaoLido.
- D) Mudar do estado Livro para o estado Cartão e emitir bip ao ocorrer CartaoLido.
- E) Manter o estado Livro e ignorar o evento CartaoLido.
✅ Resposta correta: alternativa E
Resolução passo a passo
- O problema descrito é que o evento CartaoLido, quando ocorre no estado Livro, faz o totem voltar para Cartão e perder o empréstimo em andamento. A equipe quer apenas uma regra que preserve a etapa atual, sem alterar o resto do comportamento. Passo 2: Pelo texto, o fluxo normal é Cartão, depois Livro com LivroLido, depois Recibo e, após alguns segundos, de volta a Cartão. Logo, a transição correta para CartaoLido em Livro deve manter o autômato no mesmo estado. Passo 3: A alternativa E diz para manter o estado Livro e ignorar o evento CartaoLido. Isso resolve o problema, porque o empréstimo continua aguardando o LivroLido e nenhuma etapa é perdida. Passo 4: A alternativa A está errada, pois levaria o totem ao Recibo sem que o livro tenha sido lido, o que pularia uma etapa. Passo 5: A alternativa B está errada, pois o atraso de alguns segundos pertence à saída do estado Recibo, não à leitura de um cartão em Livro, e ainda assim avançaria sem o livro. Passo 6: A alternativa C está errada, pois reproduz exatamente o defeito relatado, fazendo o sistema voltar a Cartão e perder o empréstimo. Passo 7: A alternativa D está errada, pois também volta a Cartão, e o bip faz parte do estado Recibo, não de uma transição de cancelamento. Passo 8: Conclusão: a alternativa correta é a E, que coincide com o gabarito oficial.
💡 Dica: Analise o comportamento do autômato e a regra correta para o evento no estado Livro.
Alternativa por alternativa
Supõe que qualquer evento de leitura faz o totem avançar para a próxima tela, sem notar que o Recibo só deve ser alcançado com LivroLido.
Mistura o atraso de alguns segundos do estado Recibo com a transição disparada por CartaoLido, achando que o avanço para Recibo apenas ocorre com atraso.
Acha natural que, ao aproximar um novo cartão, o sistema reinicie o atendimento, sem considerar que isso faz perder o empréstimo em andamento.
Por que engana: Confundir a transição correta e escolher retornar ao estado Cartão, perdendo o processo em andamento.
Aceita que o reinício para Cartão é adequado e acrescenta um bip, confundindo a sinalização do estado Recibo com a regra de transição pedida.
Se já está aguardando o livro, ler o cartão de novo não deve mudar o estado; assim a etapa não é reiniciada.
Raio-X da questão
autômato estados transições eventos
avaliacao
autômatos finitos básicos · eventos e estados em sistemas
Estude autômatos finitos e regras de transição de estados.
Confundir a transição correta e escolher retornar ao estado Cartão, perdendo o processo em andamento.
ciencia_tecnologia
pensamento_critico
cientifico
Questões parecidas com resolução
- Ao retirar livros reservados, uma biblioteca municipal passou a usar um armário eletrônico. Para evitar filas, o armário…
- Cerca de 180 bicicletas de um sistema comunitário de empréstimo passaram a usar uma trava eletrônica com LED. Um…
- Quando o totem de uma biblioteca comunitária é ativado, ele pede o cartão do leitor e lê o número cadastrado. Em…
- No terminal de bicicletas compartilhadas de uma praça, o painel funciona de modo automático. Quando o usuário aproxima o…
- — Por que a tela do totem volta sozinha para o começo? — perguntou um usuário no terminal rodoviário, ao tentar…
- Projete um autômato baseado em eventos para controlar o empréstimo de livros em uma biblioteca escolar. Descreva os…
Todas as questões de Programação - Autômatos e linguagens baseadas em eventos
🔎 Procurar outra questão
Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.
Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog
