GeraProva GeraProva Provas com IA para professores do Brasil
Computação8º anoBNCC EF08CO03Média⏱ medio

Em uma competição de programação, os alunos devem desenvolver um algoritmo que ordene uma lista de notas de…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF08CO03

Utilizar algoritmos clássicos de manipulação sobre listas.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Em uma competição de programação, os alunos devem desenvolver um algoritmo que ordene uma lista de notas de teste. Qual seria a melhor abordagem inicial para resolver essa tarefa?

  1. A) Usar qualquer método de ordenação.
  2. B) Desenvolver um algoritmo complexa sem teste.
  3. C) Escolher um método de ordenação conhecido e eficiente.
  4. D) Ignorar a eficiência do algoritmo.
  5. E) Utilizar um algoritmo sem documentação.

✅ Resposta correta: alternativa C

Resolução passo a passo

  1. O enunciado pede a melhor abordagem inicial para desenvolver um algoritmo que ordene uma lista de notas de teste em uma competição de programação. Isso envolve escolher uma estratégia adequada antes de programar.
  2. Resolvendo por conta própria, a melhor abordagem inicial é escolher um método de ordenação conhecido e eficiente (como merge sort, quicksort ou, para listas pequenas, insertion sort), analisando o tamanho da lista e os requisitos de tempo e memória. Isso garante uma solução correta, previsível e com bom desempenho.
  3. Por que as outras estão erradas: A) usar qualquer método ignora o desempenho, que é central em competições de programação. B) desenvolver um algoritmo complexo sem testes desconsidera a validação, e complexidade desnecessária aumenta o risco de erros. D) ignorar a eficiência é inadequado em competições, onde limites de tempo costumam ser rigorosos. E) usar algoritmo sem documentação dificulta a compreensão e a manutenção, mas não é o ponto central da escolha inicial.
  4. Comparando com o gabarito oficial (C), há concordância: a alternativa C é a correta.

💡 Dica: Considere diferentes algoritmos de ordenação e suas complexidades.

Alternativa por alternativa

A Erradaerro: Conceituala que mais engana

Acredita que qualquer método de ordenação serve, pois todos produzem a lista ordenada no final.

Por que engana: Escolher um método de ordenação sem considerar sua eficiência, levando a um desempenho insatisfatório.

B Erradaerro: Senso comum

Imagina que um algoritmo mais complexo é sinal de melhor solução e que testes podem ser dispensados ou feitos depois.

C Correta

Métodos conhecidos geralmente são mais testados.

D Erradaerro: Conceitual

Entende que, se o resultado final está correto, o custo de tempo e memória não importa, o que é falso em competições com limites de execução.

E Erradaerro: Interpretação

Considera a documentação o aspecto mais importante da abordagem inicial, confundindo organização do código com a escolha do método de resolução.

Raio-X da questão

Dificuldade Média
Bloom Avaliar
Leitura medio
Discriminação medio
Peso pedagógico medio
Autonomia do enunciado completo
Cobertura da habilidade dupla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ situacional🧩 progressao
🎯 Conceito central

algoritmos de ordenação

📌 Objetivo

avaliacao

🧱 Pré-requisitos

métodos de ordenação · eficiência de algoritmos

📚 Reveja

Revisar os principais algoritmos de ordenação e suas aplicações.

⚠️ Erro mais comum

Escolher um método de ordenação sem considerar sua eficiência, levando a um desempenho insatisfatório.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

tomada_decisao

🏫 Contexto

cotidiano

Questões parecidas com resolução

Todas as questões de Programação - Algoritmos clássicos

🔎 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.