Em um algoritmo que contém uma função que soma elementos de uma lista e usa uma variável contador temporária…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Explorar e construir a solução de problemas por meio de refinamentos, utilizando diversos níveis de abstração desde a especificação até a implementação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Em um algoritmo que contém uma função que soma elementos de uma lista e usa uma variável contador temporária dentro dessa função, qual é o escopo mais apropriado para essa variável: local ou global? Explique sucintamente.
- A) Local.
- B) Global, já que variáveis globais são mais rápidas de acessar.
- C) Local, porque evita Erros de Sintaxe em outras funções.
- D) Local, pois variáveis locais consomem mais memória.
- E) Global, pois facilita o compartilhamento da variável entre todas as funções.
✅ Resposta correta: alternativa A
Resolução passo a passo
- A questão pergunta qual escopo é mais apropriado para uma variável contador temporária usada apenas dentro de uma função que soma elementos de uma lista.
- Uma variável temporária existe só para ajudar no cálculo interno da função, ou seja, ninguém fora dela precisa lê-la ou alterá-la. Por isso, o escopo mais adequado é o local, que limita a existência e o acesso da variável ao corpo da função.
- Variáveis locais são criadas na chamada da função e destruídas ao seu término, evitando que outras partes do programa alterem o contador por engano e reduzindo conflitos de nomes entre funções diferentes.
- A alternativa B está errada porque a velocidade de acesso não é o critério para escolher escopo; a questão trata de organização e encapsulamento do código.
- A alternativa C está errada porque Erros de Sintaxe não são causados pelo escopo da variável; o escopo influencia a semântica e a organização, não a gramática da linguagem.
- A alternativa D está errada porque o uso de memória por variáveis locais não é maior que o de globais; além disso, uma variável de contador ocupa espaço desprezível e não é o fator decisivo.
- A alternativa E está errada porque compartilhar a variável entre todas as funções é justamente o que não se deseja para um contador temporário, pois aumenta o acoplamento e o risco de efeitos colaterais.
- Conclusão: o gabarito A está correto, pois o escopo local é o mais apropriado para essa variável temporária.
💡 Dica: Considere as definições de escopo local e global.
Alternativa por alternativa
Variável local limita seu escopo à função, evitando efeitos colaterais, conflitos com outras partes do programa e comportamento incorreto em chamadas concorrentes; também facilita reutilização e manutenção.
Acredita que a escolha do escopo deve priorizar desempenho de acesso, supondo que variáveis globais são sempre mais rápidas e, por isso, melhores.
Por que engana: Confundir o uso de variáveis locais e globais, acreditando que variáveis globais são sempre mais eficientes.
Associa o escopo local à prevenção de erros de sintaxe, confundindo um problema gramatical do código com um problema de organização e visibilidade de variáveis.
Supõe que variáveis locais gastam mais memória que globais, quando na prática a diferença é irrelevante e o critério é a organização do código.
Entende que compartilhar a variável entre funções é vantajoso, ignorando que isso aumenta o acoplamento e o risco de alterações indevidas em um contador temporário.
Raio-X da questão
escopo de variáveis
avaliacao
escopo de variáveis · funções em algoritmos
Revisar os conceitos de escopo de variáveis em programação.
Confundir o uso de variáveis locais e globais, acreditando que variáveis globais são sempre mais eficientes.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- Num algoritmo que percorre listas para somar valores, onde deve ser declarada a variável contadora do loop para evitar…
- Em um algoritmo que acumula ocorrências dentro de um loop, onde deve ser declarada a variável 'contador' para que ela…
- Em um programa, qual é a diferença de escopo entre uma variável declarada dentro de uma função (variável local) e uma…
- Ao decompor um algoritmo que soma valores de uma lista em uma variável acumuladora, qual ação deve ocorrer antes de…
- Em um algoritmo que calcula a soma dos elementos de uma lista usando um laço for, onde a variável 'total' deve ser…
- Em um algoritmo que soma elementos: soma <- ?; para cada valor em lista faça soma <- soma + valor. Se a variável soma…
🔎 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
