GeraProva GeraProva Provas com IA para professores do Brasil
Matemática3ª sérieBNCC EM13MAT315Difícil⏱ longo

Leia o trecho abaixo de um algoritmo recursivo que soma elementos de uma lista: fun soma(L): se L == [] então…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EM13MAT315

Investigar e registrar, por meio de um fluxograma, quando possível, um algoritmo que resolve um problema.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Leia o trecho abaixo de um algoritmo recursivo que soma elementos de uma lista: fun soma(L): se L == [] então retorne 0 senão retorne L[0] + soma(L[1:]) Avalie dois problemas que podem surgir ao aplicar essa recursão em listas muito longas e proponha um algoritmo iterativo que evite a recursão.

✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.

Resposta esperada

Problemas: (1) Empilhamento de chamadas recursivas pode causar estouro de pilha (stack overflow) em listas muito longas, interrompendo o programa. (2) O uso de slicing L[1:] em cada chamada pode criar cópias da lista, aumentando consumo de memória e tempo (possível comportamento O(n^2)). Proposta iterativa (modelo): fun soma_iterativa(L): total = 0 para cada elemento x em L: total = total + x retorne total Essa versão percorre a lista uma vez, usa espaço O(1) adicional e evita aumento da pilha; em linguagens onde for-in não existe, usar índice i de 0 até len(L)-1 e somar L[i].

Explicação

A resposta identifica problemas práticos da recursão, como o estouro de pilha e o aumento do consumo de memória devido ao uso de slicing. A proposta do algoritmo iterativo resolve essas questões ao realizar a soma em uma única passagem pela lista, utilizando espaço constante. Isso torna o algoritmo mais eficiente em termos de tempo e memória, sendo adequado para listas longas.

Raio-X da questão

Dificuldade Difícil
Bloom Avaliar
Leitura alto
Discriminação alto
Peso pedagógico alto
Autonomia do enunciado completo
Cobertura da habilidade multipla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ interpretativa🧩 desafio
🎯 Conceito central

algoritmo recursivo

📌 Objetivo

avaliacao

🧱 Pré-requisitos

algoritmo recursivo · estruturas de dados

📚 Reveja

Revisar conceitos de recursão e iteração em algoritmos.

⚠️ Erro mais comum

O aluno pode confundir a recursão com a iteração, propondo uma solução que ainda utiliza recursão de forma inadequada.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cientifico

Questões parecidas com resolução

Todas as questões de Leitura e interpretação de tabelas e gráficos (de colunas ou barras simples ou múltiplas) referentes a variáveis categóricas e variáveis numéricas

🔎 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

Ocorreu um erro inesperado. Recarregar X

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.