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

Descreva em pseudocódigo e em linguagem natural um algoritmo que receba um vetor de variáveis booleanas (dados…

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

Descreva em pseudocódigo e em linguagem natural um algoritmo que receba um vetor de variáveis booleanas (dados de sensores) e compacte essas variáveis em um único inteiro usando bit-packing. Explique também como reconstruir as variáveis originais a partir desse inteiro.

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

Resposta esperada

Pseudocódigo: func compactar(B[0..n-1]): x ? 0 for i de 0 até n-1: if B[i] then x ? x OR (1 << i) return x func descompactar(x,n): for i de 0 até n-1: B[i] ? ((x >> i) AND 1) == 1 return B Resposta modelo (linguagem natural): mapear cada variável booleana para uma posição de bit; usar deslocamento à esquerda (<<) e OR para definir bits em x; para recuperar, deslocar à direita (>>) e aplicar AND com 1 para obter cada valor original.

Explicação

O algoritmo utiliza operações de bitwise para compactar múltiplas variáveis booleanas em um único inteiro, economizando espaço. O uso de deslocamento à esquerda permite que cada bit do inteiro represente uma variável booleana específica, enquanto a operação OR garante que os bits sejam configurados corretamente. Para a descompactação, o deslocamento à direita e a operação AND recuperam os valores originais, garantindo que a informação seja restaurada de forma precisa.

Raio-X da questão

Dificuldade Difícil
Bloom Criar
Leitura alto
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

bit-packing de booleanos

📌 Objetivo

avaliacao

🧱 Pré-requisitos

representacao de dados · tipos de dados

📚 Reveja

Revisar conceitos de bit-packing e manipulação de bits.

⚠️ Erro mais comum

O aluno pode confundir a compactação de dados com a simples soma dos valores booleanos, não utilizando a técnica de bit-packing corretamente.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cientifico

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.