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
- Uma estudante quer criar uma lista automática para organizar a mochila antes de sair de casa. Ela separou a tarefa em…
- Certo dia, Ana precisava dobrar e emparelhar todas as meias de sua família. Ela anotou um passo a passo: 1) pegar o…
- Um estudante deseja criar um programa que avise quando faltar material na mochila. Ele percebe que a lógica pode ser a…
- Na oficina de robótica do bairro, um pequeno programa foi criado para separar cartões de acesso esquecidos pelos alunos…
- Na oficina de tecnologia da escola, um grupo programou um robô para recolher uma garrafa e levá-la até uma caixa de…
- — Lucas, por que as músicas do seu arquivo tocam sem ordem? — Estou com cerca de duzentos arquivos de áudio espalhados…
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
