Por que um bilhete de devolução atrasada se perde tão fácil? Na pequena biblioteca comunitária do bairro, os…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Criar soluções de problemas para os quais seja adequado o uso de registros e matrizes unidimensionais para descrever suas informações e automatizá-las usando uma linguagem de programação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Por que um bilhete de devolução atrasada se perde tão fácil? Na pequena biblioteca comunitária do bairro, os empréstimos são anotados em um caderno. Para cada empréstimo, o voluntário registra: código do livro, nome de quem pegou, telefone e o dia do mês em que deve devolver. Como o caderno já tem muitas páginas, eles decidiram fazer um programinha simples: todo dia, ele deve percorrer os empréstimos ainda abertos e listar apenas os que faltam 2 dias ou menos para a devolução, mostrando também o telefone para contato. O voluntário percebeu que, para o programa funcionar, precisa organizar as informações de um jeito que mantenha juntos os dados de um mesmo empréstimo e permita guardar vários empréstimos ao mesmo tempo, sem misturar dados de pessoas e livros diferentes. Com base no texto, identifique a forma de organizar os dados que melhor permite automatizar a verificação diária, mantendo juntos os dados de cada empréstimo.
- A) Usar uma lista única de textos, juntando codigo, nome, telefone e dia em uma frase por empréstimo
- B) Usar uma lista de codigos e procurar o nome e telefone em outro lugar sempre que precisar avisar
- C) Usar um único registro e sobrescrever seus campos a cada novo empréstimo, guardando só o mais recente
- D) Usar uma lista em que cada posição guarda um registro com codigo, nome, telefone e dia de devolução
- E) Usar quatro listas separadas (codigos, nomes, telefones, dias) sem garantir o mesmo indice para o mesmo empréstimo
✅ Resposta correta: alternativa D
Resolução passo a passo
- O problema pede uma forma de organizar os dados que (a) mantenha juntos os dados de cada empréstimo, (b) permita guardar vários empréstimos ao mesmo tempo e (c) permita percorrer todos automaticamente para filtrar os que faltam 2 dias ou menos.
- A estrutura adequada é uma lista em que cada elemento é um registro (por exemplo, um conjunto de campos agrupados: codigo, nome, telefone e dia de devolução). Assim, cada empréstimo fica como uma unidade, e o programa percorre a lista, calcula quantos dias faltam (dia de devolução menos o dia de hoje) e exibe o telefone dos que estão a 2 dias ou menos do prazo.
- Por isso a alternativa D é a correta, pois une os dados de um mesmo empréstimo e permite armazenar vários empréstimos sem misturá-los.
- A alternativa A está errada, pois uma frase única por empréstimo exige separar os campos de novo a cada consulta, o que é frágil e dificulta a verificação de datas.
- A alternativa B está errada, pois separar o código do nome e do telefone obriga a buscar dados em outro lugar, quebrando a ideia de manter tudo junto.
- A alternativa C está errada, pois um único registro sobrescrito perde os empréstimos anteriores, impossibilitando guardar vários ao mesmo tempo.
- A alternativa E está errada, pois listas separadas sem garantir o mesmo índice podem misturar dados de pessoas e livros diferentes, justamente o que o voluntário quer evitar.
- Observação: o texto não informa o mês atual nem a forma exata de cálculo, mas isso não altera a escolha da estrutura.
💡 Dica: Pense em como agrupar dados relacionados para facilitar a consulta diária.
Alternativa por alternativa
Acredita que juntar tudo em uma única frase de texto basta para organizar os dados, sem perceber que seria preciso separar os campos novamente para verificar as datas.
Entende que guardar apenas códigos e buscar nome e telefone depois é suficiente, ignorando o requisito de manter juntos os dados de cada empréstimo.
Imagina que basta um único registro reaproveitado, sem perceber que sobrescrever apaga os demais empréstimos que devem ser guardados simultaneamente.
Um registro reúne os campos de um empréstimo, e a lista (matriz 1D) guarda vários registros para percorrer e filtrar.
Supõe que listas separadas funcionam sem vínculo entre posições, não percebendo que, sem o mesmo índice, nomes e telefones podem ser associados aos livros errados.
Raio-X da questão
organização de dados estruturados
diagnostico
conceito de dados agrupados · estrutura de dados básica
Estude estruturas de dados que agrupam informações relacionadas, como registros ou objetos.
Confundir dados relacionados e armazenar informações separadamente, dificultando a consulta conjunta.
pensamento_critico
cotidiano
Questões parecidas com resolução
- No fim da tarde, um grupo de jovens voluntários recebeu caixas de livros devolvidos por moradores do bairro. Para evitar…
- Por que a fumaça de queimadas parece “viajar” e piorar o ar de bairros distantes? Um grupo de jovens acompanha dados…
- — A fila andou rápido, mas a confusão começou na hora de sentar — comentou um voluntário na sessão de cinema ao ar livre…
- — Tia, onde fica o livro do Ziraldo? — perguntou uma criança na biblioteca do bairro. Para ajudar nas buscas…
- — Se aparecer contaminação em um lote, a gente precisa descobrir de qual ponto veio e quem recolheu — disse uma das…
- "Sistema de gestão de empréstimos reduz papelada na biblioteca comunitária" O registro diário de empréstimos em uma…
Todas as questões de Programação - Programação usando registros e matrizes
🔎 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
