Ao organizar as fotos do campeonato do bairro, Lia criou um programa para separar imagens por ano, mês e dia…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Construir soluções de problemas usando a técnica de recursão e automatizar tais soluções usando uma linguagem de programação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Ao organizar as fotos do campeonato do bairro, Lia criou um programa para separar imagens por ano, mês e dia. Primeiro, ele abre a pasta principal. Se encontrar outra pasta dentro dela, faz a mesma tarefa nessa nova pasta. Quando encontra uma imagem, registra o nome e segue adiante. O processo só termina quando não resta nenhuma pasta para abrir. Depois de testar, Lia percebeu que o mesmo conjunto de instruções serviu para pastas grandes e pequenas, sem precisar escrever uma rotina diferente para cada caso. Considere o texto-base e identifique a característica da solução criada por Lia que permite tratar pastas dentro de pastas até o final do processo.
- A) Listar apenas os nomes das pastas, sem entrar nas subpastas, para manter a organização.
- B) Aplicar a mesma sequência em partes menores do problema até chegar ao caso sem nova pasta.
- C) Abrir todas as pastas ao mesmo tempo para terminar a busca mais rapidamente.
- D) Parar o programa assim que encontrar a primeira imagem dentro da pasta principal.
- E) Trocar a sequência sempre que surgir uma pasta nova para evitar repetir instruções.
✅ Resposta correta: alternativa B
Resolução passo a passo
- O enunciado descreve um procedimento que, ao encontrar uma pasta dentro de outra, repete a mesma tarefa nessa nova pasta, e termina somente quando não resta pasta a abrir. Isso é uma solução recursiva.
- A característica central é que o problema é dividido em partes menores do mesmo tipo (uma pasta dentro da outra é o mesmo problema, só que menor) e a mesma sequência de instruções é aplicada a cada parte, até chegar a um caso básico, que aqui é a pasta sem nova pasta dentro.
- Isso explica a observação de Lia: como o conjunto de instruções é o mesmo para pastas grandes e pequenas, não é preciso escrever uma rotina diferente para cada nível de profundidade.
- Por que a alternativa A está errada: ela não entra nas subpastas, o que impede tratar o conteúdo interno e não resolve o problema proposto.
- Por que a alternativa C está errada: abrir tudo ao mesmo tempo não corresponde à sequência descrita, que trabalha uma pasta de cada vez e segue para a próxima.
- Por que a alternativa D está errada: o programa deve continuar até não restar pasta a abrir, e não parar na primeira imagem.
- Por que a alternativa E está errada: o texto destaca justamente que a mesma sequência serve para todos os casos, sem trocá-la.
- Conclusão: a alternativa B é a correta, pois descreve a aplicação repetida da mesma sequência sobre partes menores até o caso sem nova pasta.
💡 Dica: Identifique a característica que permite repetir a mesma ação em partes menores do problema.
Alternativa por alternativa
O aluno entendeu que organizar exige apenas listar nomes, ignorando que o programa precisa entrar em cada subpasta para encontrar as imagens.
Por que engana: Confundir recursividade com iteração simples ou não entender que a mesma rotina pode ser aplicada repetidamente.
Correta. O texto descreve repetição do mesmo procedimento em subpastas e término quando não há mais pasta, isto é, uma solução recursiva.
O aluno imaginou que a solução eficiente seria paralelizar tudo ao mesmo tempo, confundindo a ideia de decomposição sucessiva com execução simultânea.
O aluno supôs que basta encontrar uma imagem para concluir a tarefa, desconsiderando a condição de término descrita no texto (só termina quando não há mais pastas).
O aluno acreditou que cada nova pasta exige uma sequência diferente, quando o texto afirma justamente que o mesmo conjunto de instruções serve para todos os casos.
Raio-X da questão
recursividade em programação
diagnostico
estrutura de dados hierárquica
Estude o conceito de recursividade e como funções podem chamar a si mesmas.
Confundir recursividade com iteração simples ou não entender que a mesma rotina pode ser aplicada repetidamente.
ciencia_tecnologia
pensamento_critico
cotidiano
Questões parecidas com resolução
- Em uma estufa, um programa analisa a umidade de cinco canteiros, na ordem indicada, e aciona a irrigação quando a…
- Na feira cultural da escola, um grupo criou uma lista com as músicas que tocarão no palco: abertura, apresentação de…
- Na horta da escola, foram registradas as umidades do solo em uma lista: [42, 37, 35]. Uma função recursiva verifica se…
- Uma banca de feira registra em uma lista o preço de cada cesta vendida durante a manhã. Para calcular o total…
- Pesquisadores acompanham a qualidade da água em estações de um rio e precisam automatizar a leitura dos sensores. No…
- Por que uma lâmpada apagada pode continuar sem reparo por vários dias? Na central de atendimento de um município…
Todas as questões de Programação - Programação com listas e recursão
🔎 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
