Em um algoritmo composto por várias funções, como deve ser declarada uma variável de configuração que não pode…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Comparar diferentes casos particulares (instâncias) de um mesmo problema, identificando as semelhanças e diferenças entre eles, e criar um algoritmo para resolver todos, fazendo uso de variáveis (parâmetros) para permitir o tratamento de todos os casos de forma genérica.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Em um algoritmo composto por várias funções, como deve ser declarada uma variável de configuração que não pode ser alterada durante a execução para evitar mudanças acidentais?
- A) Variável local padrão (método de função)
- B) Variável global padrão (sem modificadores)
- C) Declarar como constante imutável em escopo global (ex.: const/readonly antes das funções).
- D) Atributo de classe (no contexto de programação orientada)
- E) Variável pública (sem proteção)
✅ Resposta correta: alternativa C
Resolução passo a passo
- O enunciado pergunta como declarar uma variável de configuração que não deve ser alterada durante a execução, justamente para evitar mudanças acidentais em um algoritmo formado por várias funções.
- Para isso, o recurso adequado é uma constante, ou seja, um valor declarado como imutável (em linguagens como C, JavaScript ou Python por convenção, usa-se const, readonly ou equivalentes). Declarada em escopo global, antes das funções, ela fica visível a todas elas e não pode ser reatribuída, o que impede alterações acidentais.
- Por que as outras estão erradas: A) uma variável local some ao fim da função e não é compartilhada entre funções, então não serve como configuração comum; B) uma variável global sem modificadores pode ser alterada por qualquer função, o que é justamente o risco a evitar; D) um atributo de classe depende de programação orientada a objetos e não é a solução genérica pedida; E) uma variável pública sem proteção pode ser modificada livremente por qualquer parte do código.
- Conclusão: a alternativa C é a correta e coincide com o gabarito oficial.
💡 Dica: Pense em como declarar constantes em programação.
Alternativa por alternativa
O aluno acredita que declarar a variável dentro de uma função a protege, mas a variável local não é compartilhada entre as funções e não funciona como configuração geral do algoritmo.
O aluno confunde variável global com variável protegida, achando que basta ser global para ser acessível e segura, sem perceber que qualquer função pode alterá-la sem restrição.
Por que engana: Confundir variáveis mutáveis com constantes, escolhendo uma opção que permite alterações durante a execução.
Constantes imutáveis previnem reatribuições acidentais; declará-las em escopo acessível às funções garante leitura consistente sem permitir modificações.
O aluno associa a proteção de configurações apenas à orientação a objetos e acredita que um atributo de classe é obrigatoriamente imutável, quando ele também pode ser alterado se não for declarado como constante.
O aluno entende que variáveis públicas são convenientes para acesso geral, sem perceber que a ausência de proteção é exatamente o que permite alterações acidentais.
Raio-X da questão
variáveis de configuração
avaliacao
declaração de variáveis · escopo de variáveis
Revisar a declaração de variáveis constantes em algoritmos.
Confundir variáveis mutáveis com constantes, escolhendo uma opção que permite alterações durante a execução.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- Para tornar um algoritmo reutilizável e seguro para execução paralela, qual prática relacionada a variáveis e efeitos…
- Em um algoritmo, qual função tem uma variável?
- Em um algoritmo, uma função recebe um vetor chamado dados que não deve ser alterado. Para garantir que a variável…
- Em um algoritmo, qual é a função de uma variável?
- Ao generalizar um algoritmo que processa uma coleção e acumula resultados, qual prática relativa à variável acumuladora…
- Em um algoritmo de agendamento com variáveis globais, ao aplicar decomposição para reduzir acoplamento entre módulos…
Todas as questões de Estratégias de solução de problemas - Generalizaçã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
