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

Em pseudocódigo, descreva um algoritmo que recebe na variável 'imagem' uma matriz 8x8 de pixels binários e…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF69CO08

Compreender e utilizar diferentes formas de armazenar, manipular, compactar e recuperar arquivos, documentos e metadados.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Em pseudocódigo, descreva um algoritmo que recebe na variável 'imagem' uma matriz 8x8 de pixels binários e produz (a) a codificação direta em bitmap e (b) uma codificação por run-length encoding (RLE). Explique também o procedimento de decodificação e compare, com exemplo numérico, o tamanho em bits das duas codificações para um caso favorável à RLE.

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

Resposta esperada

Resposta-modelo (pseudocódigo e justificativa): Função encodeBitmap(imagem): // Bitmap: armazenar bits na ordem linha-major bits ? '' para i de 0 até 7: para j de 0 até 7: bits ? bits + str(imagem[i][j]) retornar bits // 64 bits Função encodeRLE(imagem): runs ? lista vazia atual ? imagem[0][0] contador ? 1 para k de 1 até 63: // percorrer em linha-major como índice linear i ? k // 8; j ? k % 8 pixel ? imagem[i][j] se pixel == atual então contador ? contador + 1 senao runs.adicionar((atual, contador)) atual ? pixel contador ? 1 runs.adicionar((atual, contador)) retornar runs // lista de pares (valor, contagem) Função decodeRLE(runs): reconstruida ? matriz 8x8 vazia pos ? 0 para cada (valor, contagem) em runs: para t de 1 até contagem: i ? pos // 8; j ? pos % 8 reconstruida[i][j] ? valor pos ? pos + 1 retornar reconstruida Representação e comparação de tamanhos (exemplo favorável): - Bitmap armazena sempre 64 bits. - RLE: representar cada par (valor, contagem) usando 1 bit para valor + 7 bits para contagem (um byte por run, suficiente para contagens até 127). Então cada run = 8 bits. - Exemplo favorável: imagem com todas as linhas iguais a 0 (todos os 64 pixels = 0). RLE produz um único run (0,64) ? 8 bits. Bitmap = 64 bits, RLE = 8 bits ? economia de 56 bits. Observações: em padrões muito alternados (por exemplo, checkerboard) o número de runs pode chegar a 64, fazendo RLE ocupar 64 bytes (512 bits) se usar 8 bits por run, portanto RLE é vantajoso quando há runs longos de pixels iguais; o algoritmo deve escolher formato de contagem adequado ao domínio para otimizar armazenamento.

Explicação

O pseudocódigo apresentado define claramente duas funções para codificação de uma matriz de pixels, utilizando bitmap e RLE, além de uma função para decodificação da RLE. A comparação de tamanhos entre as duas codificações ilustra a eficiência da RLE em situações onde há repetição de valores, destacando a economia de bits em casos favoráveis. A análise do exemplo numérico reforça a aplicação prática do algoritmo, evidenciando a vantagem do uso de RLE em imagens com longas sequências de pixels iguais.

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

codificação de imagem

📌 Objetivo

avaliacao

🧱 Pré-requisitos

matrizes e arrays · codificação de dados

📚 Reveja

Revisar algoritmos de codificação e decodificação de dados.

⚠️ Erro mais comum

O aluno pode confundir os conceitos de codificação bitmap e RLE, apresentando apenas um tipo de codificação ou explicando incorretamente o processo de decodificação.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cientifico

Questões parecidas com resolução

Todas as questões de Armazenamento e Transmissão de dados - Gestão de dados

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