— Se a gente separar errado, perde tempo na hora de arrumar as prateleiras — reclamou uma voluntária ao…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Descrever com precisão a solução de um problema, construindo o programa que implementa a solução descrita.
Fonte: Base Nacional Comum Curricular (MEC).Questão
— Se a gente separar errado, perde tempo na hora de arrumar as prateleiras — reclamou uma voluntária ao receber caixas de livros doados. Para diminuir confusões, foi combinando usar um tablet com um programa bem simples. Para cada livro, a pessoa digita duas informações: o gênero (I para infantojuvenil, F para ficção, O para outros) e o estado (bom ou ruim). As regras são: livro em estado ruim vai direto para reciclagem, não importa o gênero. Se o livro estiver bom, ele deve ir para a prateleira do gênero (I, F ou Outros). Ao final do cadastro, o programa precisa mostrar quatro totais: quantos foram para reciclagem, quantos para Infantojuvenil, quantos para Ficção e quantos para Outros. O cadastro termina quando a pessoa digita FIM no lugar do gênero. Com base no texto, identifique a descrição de programa que implementa essas regras com precisão, separando leitura, decisão, contagem e exibição do resultado final.
- A) Rec=Inf=Fic=Ger=0; repetir: ler g,e; se g='FIM' parar; se g='I' Inf++; senao se g='F' Fic++; senao Ger++; se e='ruim' Rec++; fim;exibir totais.
- B) Rec=Inf=Fic=Ger=0; repetir: ler g,e; se g='FIM' parar; se e='ruim' Rec++; senao se g='I' Inf++; senao se g='F' Fic++; senao Ger++; fim;exibir totais.
- C) Rec=Inf=Fic=Ger=0; repetir: ler g,e; se e='FIM' parar; se e='ruim' Rec++; senao se g='I' Inf++; senao se g='F' Fic++; senao Ger++; fim;exibir totais.
- D) repetir: Rec=Inf=Fic=Ger=0; ler g,e; se g='FIM' parar; se e='ruim' Rec++; senao se g='I' Inf++; senao se g='F' Fic++; senao Ger++; fim;exibir totais.
- E) Rec=Inf=Fic=0; repetir: ler g,e; se g='FIM' parar; se e='ruim' Rec++; senao se g='I' Inf++; senao se g='F' Fic++; fim;exibir totais.
✅ Resposta correta: alternativa B
Resolução passo a passo
- Antes do laço, os quatro contadores (Rec, Inf, Fic, Ger) são zerados uma única vez, para que acumulem o total de todos os livros. Passo 2: Dentro do laço, o programa lê o gênero g e o estado e. Passo 3: A condição de parada deve testar g='FIM', pois o enunciado diz que o cadastro termina quando FIM é digitado no lugar do gênero. Passo 4: A decisão precisa dar prioridade ao estado: se e='ruim', o livro vai para reciclagem (Rec++) independentemente do gênero. Passo 5: Só se o livro estiver bom é que o gênero decide a prateleira: se g='I' soma em Inf, senão se g='F' soma em Fic, senão soma em Ger (Outros). Cada livro é contado em exatamente um total. Passo 6: Ao sair do laço (FIM), o programa exibe os quatro totais, que é a exibição pedida. A alternativa B segue exatamente essa ordem: leitura, teste de parada, decisão pelo estado, classificação pelo gênero e exibição. Por que as outras estão erradas: A conta o livro também na prateleira de gênero mesmo quando está ruim, duplicando a contagem. C testa e='FIM' em vez de g='FIM', então o cadastro nunca termina pelo gênero. D zera os contadores dentro do laço, de modo que eles são reinicializados a cada livro e os totais finais ficam errados. E não possui o contador Ger, então os livros de Outros não são contabilizados.
💡 Dica: Analise as regras e organize o programa em etapas: leitura, decisão, contagem e exibição.
Alternativa por alternativa
O aluno acredita que o gênero deve ser avaliado primeiro e que o livro ruim também entra na contagem da prateleira, ignorando que a regra de reciclagem é absoluta e exclusiva.
Para em FIM, prioriza reciclagem quando e=ruim, classifica os bons por gênero e soma contadores; só exibe ao final, como pedido.
O aluno confunde os campos, achando que a palavra FIM é digitada no lugar do estado e testando e='FIM', quando o enunciado diz que FIM substitui o gênero.
O aluno imagina que inicializar os contadores dentro do laço é equivalente a fazê-lo antes, sem perceber que cada iteração zera os totais acumulados.
O aluno esquece a quarta contagem exigida pelo enunciado, a de livros de Outros, e não percebe que o programa precisa mostrar quatro totais.
Raio-X da questão
estrutura condicional e contagem
diagnostico
estrutura condicional simples · comandos de repetição
Estude estruturas condicionais e comandos de repetição para controle de fluxo.
Confundir as condições para reciclagem e para prateleira, ou não atualizar corretamente os contadores.
pensamento_critico
cotidiano
Questões parecidas com resolução
- — Moça, minha senha é 14, mas a moça do balcão chamou a 15… — reclamou um cliente na fila do ponto de recarga de água…
- Pesquisadores acompanham as árvores de uma avenida depois de ventos fortes. Em cada árvore, voluntários registram um…
- — A gente perdeu dois pedidos ontem — reclamou a atendente da padaria, olhando o caderno cheio de recados. Pela manhã…
- Durante um mutirão de limpeza na praia, os objetos recolhidos passam por uma esteira na ordem em que foram encontrados…
- Turistas formam fila para pegar equipamentos emprestados na entrada de um parque. No balcão, há um terminal com leitor…
- — Nem toda travessia precisa emitir som ao mesmo tempo — explicou a técnica responsável pelos sinais acessíveis da…
🔎 Resolver outra questão
Cole o enunciado e veja a resolução passo a passo, a alternativa correta e por que as outras estão erradas.
Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog
