GeraProva GeraProva Provas com IA para professores do Brasil
Computação6º anoBNCC EF06CO02Difícil⏱ longo

Descreva um algoritmo em pseudocódigo que, dado um vetor de registros (nome:string, nota:num, presente:bool)…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF06CO02

Elaborar algoritmos que envolvam instruções sequenciais, de repetição e de seleção usando uma linguagem de programação.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Descreva um algoritmo em pseudocódigo que, dado um vetor de registros (nome:string, nota:num, presente:bool), calcule a média das notas apenas dos alunos presentes e retorne a lista de nomes cujas notas estão abaixo dessa média. Use variáveis claras e explique os passos.

✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.

Resposta esperada

Pseudocódigo: 1. function alunosAbaixoMedia(registros): 2. soma <- 0 3. cont <- 0 4. para cada r em registros: 5. se r.presente == true então 6. soma <- soma + r.nota 7. cont <- cont + 1 8. se cont == 0 então 9. retornar lista vazia // nenhum aluno presente 10. media <- soma / cont 11. listaAbaixo <- [] 12. para cada r em registros: 13. se r.presente == true e r.nota < media então 14. adicionar r.nome em listaAbaixo 15. retornar listaAbaixo Explicação dos passos: - Variáveis: soma (numérica), cont (inteira), media (numérica), listaAbaixo (vetor de strings). - Primeiro loop soma apenas notas de alunos marcados como presentes e conta quantos estão presentes; trata-se o caso sem presentes retornando lista vazia. - Calcula-se a média com as variáveis soma e cont. - Segundo loop verifica cada aluno presente; se sua nota for menor que a média, o nome é adicionado à lista de saída. - Complexidade: percorre-se a lista duas vezes, resultando em O(n). Opcionalmente, pode-se fazer em um único passo mantendo uma estrutura intermediária, mas a versão em dois passos é clara e robusta para entendimento.

Explicação

O algoritmo utiliza uma abordagem clara e estruturada para calcular a média das notas dos alunos presentes, garantindo que todos os casos sejam considerados, como a ausência de alunos. A divisão em dois loops permite uma fácil compreensão do processo de cálculo da média e da verificação das notas em relação a essa média. Além disso, a escolha de variáveis descritivas facilita a leitura e manutenção do código.

Raio-X da questão

Dificuldade Difícil
Bloom Criar
Leitura medio
Discriminação alto
Peso pedagógico alto
Autonomia do enunciado completo
Cobertura da habilidade multipla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ interpretativa🧩 desafio
🎯 Conceito central

algoritmo em pseudocódigo

📌 Objetivo

avaliacao

🧱 Pré-requisitos

vetores e registros · média aritmética

📚 Reveja

Revisar como calcular médias e manipular vetores.

⚠️ Erro mais comum

O aluno pode confundir a lógica de cálculo da média, incluindo notas de alunos ausentes ou não filtrando corretamente os nomes.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cotidiano

Questões parecidas com resolução

Todas as questões de Programação - Linguagem de programaçã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

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.