Ao decompor um algoritmo que atualiza a mesma variável de estado em várias subtarefas, que estratégia reduz…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Aplicar a estratégia de decomposição para resolver problemas complexos, dividindo esse problema em partes menores, resolvendo-as e combinando suas soluções.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Ao decompor um algoritmo que atualiza a mesma variável de estado em várias subtarefas, que estratégia reduz efeitos colaterais e facilita o reúso das subtarefas?
- A) Tratar estados de forma independente: cada função controla seu próprio estado.
- B) Encapsular o estado: passar o valor como parâmetro às subtarefas e retornar o novo valor, evitando variáveis globais compartilhadas.
- C) Usar constante para valores de estado: não passa valores entre subtarefas.
- D) Manter variáveis globais: permite acesso rápido a estados por todas as subtarefas.
- E) Duplicar a lógica em cada subtarefa: cada uma atualiza a variável diretamente.
✅ Resposta correta: alternativa B
Resolução passo a passo
- O enunciado pergunta qual estratégia reduz efeitos colaterais quando várias subtarefas atualizam a mesma variável de estado, e que facilita o reúso dessas subtarefas. Efeito colateral ocorre quando uma subtarefa altera algo que outra parte do programa usa sem que isso seja explícito.
- Resolvendo por conta própria, a solução clássica é controlar o estado de forma explícita: a subtarefa recebe o valor atual como parâmetro, trabalha sobre ele e devolve o novo valor. Assim, a dependência fica visível na assinatura da função, não há alteração escondida de variáveis compartilhadas, e a subtarefa pode ser reutilizada em outros contextos sem depender de um estado global específico. Isso corresponde à alternativa B.
- Por que as outras estão erradas:
- A) Estados independentes por função impedem que subtarefas compartilhem a informação necessária, o que não resolve a atualização de uma mesma variável.
- C) Constantes não podem ser atualizadas, logo não servem para representar um estado que muda.
- D) Variáveis globais são justamente a fonte de efeitos colaterais, pois qualquer subtarefa pode alterá-las sem aviso.
- E) Duplicar a lógica aumenta a manutenção e os erros, e cada cópia continua mexendo diretamente no estado, o que não reduz efeitos colaterais nem favorece o reúso.
- Conclusão: a alternativa B está correta e coincide com o gabarito oficial.
💡 Dica: Considere as práticas de programação que minimizam efeitos colaterais.
Alternativa por alternativa
O aluno acredita que isolar o estado em cada função evita conflitos, sem perceber que a variável precisa ser compartilhada e atualizada de forma coordenada entre subtarefas.
Por que engana: Confundir o uso de variáveis globais com a passagem de parâmetros, levando a efeitos colaterais indesejados nas subtarefas.
Encapsulamento e passagem explícita de parâmetros tornam as subtarefas independentes, simplificam testes e evitam conflitos de estado.
O aluno confunde estado com constante, imaginando que transformar o valor em constante elimina a necessidade de atualizá-lo entre as subtarefas.
O aluno associa acesso rápido e cômodo a boa prática, ignorando que variáveis globais permitem alterações não rastreáveis e aumentam os efeitos colaterais.
O aluno pensa que repetir a lógica em cada subtarefa deixa o código mais autônomo, sem perceber que a duplicação dificulta manutenção e reúso.
Raio-X da questão
decomposição de algoritmos
avaliacao
decomposição de algoritmos · variáveis e estados
Revisar estratégias de programação para evitar efeitos colaterais.
Confundir o uso de variáveis globais com a passagem de parâmetros, levando a efeitos colaterais indesejados nas subtarefas.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- — Se o painel da feira de leitura tentar fazer tudo de uma vez, será difícil descobrir onde está um erro — observou a…
- — A gente perdeu dois pedidos ontem — reclamou a atendente da padaria, olhando o caderno cheio de recados. Pela manhã…
- Em um site da escola, a equipe precisa organizar notícias, eventos, avisos e documentos. O professor sugeriu que cada…
- Descreva, em etapas ordenadas, um protocolo/algoritmo para sincronização de arquivos entre um dispositivo móvel e um…
- Em um algoritmo que agrupa registros por categoria e calcula métricas distintas (soma, média, contagem), que subtarefa…
- Em um algoritmo que importa dados em formatos diferentes (CSV, JSON), qual subtarefa da decomposição promove…
🔎 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
