Considere um algoritmo que percorre uma lista de temperaturas e conta quantos valores excedem um limite. Para…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Reconhecer o conceito de metaprogramação como uma forma de generalização na construção de programas, permitindo que algoritmos sejam entrada ou saída para outros algoritmos.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Considere um algoritmo que percorre uma lista de temperaturas e conta quantos valores excedem um limite. Para generalizá-lo a diferentes limites sem alterar o corpo do laço, qual elemento deve ser convertido em parâmetro da função?
- A) O tipo de dados da lista deve ser mudado para inteiro somente.
- B) A saída do resultado deve ser convertida em um booleano indicando se excede.
- C) O limite (threshold) deve ser um parâmetro de entrada do algoritmo.
- D) O número de iterações do laço deve ser transformado em parâmetro.
- E) A lista de temperaturas deve ser convertida em um string concatenado.
✅ Resposta correta: alternativa C
Resolução passo a passo
- O algoritmo percorre uma lista de temperaturas e conta quantos valores excedem um limite. O limite é o valor de comparação usado dentro do laço, por exemplo se temperatura > limite então conta++.
- Queremos reutilizar o mesmo algoritmo para limites diferentes sem mexer no corpo do laço. Para isso, o valor que muda de uma situação para outra deve ser recebido de fora, como parâmetro. Esse valor é o limite (threshold).
- Ao transformar o limite em parâmetro de entrada, a comparação dentro do laço continua idêntica; só muda o valor passado na chamada da função. Isso resolve exatamente o problema proposto.
- Verificação das demais alternativas:
- A) Mudar o tipo da lista para inteiro somente não generaliza nada e ainda restringe os dados, pois temperaturas podem ser decimais.
- B) Converter a saída em booleano perderia a contagem, que é o resultado pedido pelo algoritmo.
- D) O número de iterações é determinado pelo tamanho da lista e não pelo limite; transformá-lo em parâmetro não afeta a comparação com diferentes limites.
- E) Converter a lista em string concatenada não tem relação com a comparação numérica e tornaria a comparação inviável sem conversões.
- Portanto, a alternativa correta é a C, que coincide com o gabarito oficial.
💡 Dica: Identifique o elemento que deve ser parametrizado.
Alternativa por alternativa
Acredita que generalizar o algoritmo exige apenas ajustar o tipo de dado da lista, confundindo a flexibilidade de um parâmetro com a restrição de tipo.
Por que engana: Confundir a necessidade de alterar o corpo do laço com a modificação de outros elementos que não são essenciais para a generalização do algoritmo.
Confunde a saída do algoritmo com o critério de comparação, achando que o resultado deveria ser apenas sim ou não, e não a contagem pedida.
Tornar o limite um parâmetro permite reutilizar o mesmo código para critérios diferentes; o laço permanece inalterado e o comportamento muda conforme o valor recebido.
Imagina que o número de repetições do laço depende do limite, quando na verdade ele depende do tamanho da lista percorrida.
Supõe que a estrutura de dados precisa ser transformada em texto para qualquer generalização, ignorando que a comparação é numérica.
Raio-X da questão
parâmetros de função
avaliacao
funções em programação · parâmetros de função
Revisar como utilizar parâmetros em funções de algoritmos.
Confundir a necessidade de alterar o corpo do laço com a modificação de outros elementos que não são essenciais para a generalização do algoritmo.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- Em um projeto de monitoramento de rios, uma boia computacional organiza leituras de sensores antes de enviá-las por…
- Uma biblioteca escolar recebeu caixas de livros doados para uma feira de troca. Para registrar os exemplares, a equipe…
- Um centro cultural público oferece inscrições on-line para atividades com critérios variados. Na oficina de teatro…
- Uma escola está testando dois protótipos de aplicativo para que estudantes consultem mudanças de sala, horários e…
- Uma secretaria municipal de educação está digitalizando pedidos de transporte escolar e de atendimento em contraturno…
- — O cartaz não pode sair duas vezes, pois a feira começa em uma hora — alertou a coordenadora do centro cultural. No…
🔎 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
