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

Descreva um algoritmo em pseudocódigo que, dado n variáveis booleanas (dados de entrada), gere todas as 2^n…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF15CO02

Construir e simular algoritmos, de forma independente ou em colaboração, que resolvam problemas simples e do cotidiano com uso de sequências, seleções condicionais e repetições de instruções.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Descreva um algoritmo em pseudocódigo que, dado n variáveis booleanas (dados de entrada), gere todas as 2^n combinações possíveis e explique a complexidade temporal e espacial do algoritmo.

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

Resposta esperada

Resposta modelo (pseudocódigo e análise): Iterativo por contagem binária: 1. Para i de 0 até 2^n - 1: 2. Para j de 0 até n-1: 3. bit[j] ? (i >> j) & 1 4. Emitir bit[0..n-1] Recursivo (backtracking): função gerar(pos, prefixo): se pos == n: emitir prefixo; retornar prefixo[pos] = 0; gerar(pos+1, prefixo) prefixo[pos] = 1; gerar(pos+1, prefixo) Complexidade: - Tempo: O(n · 2^n) porque geramos 2^n combinações e cada combinação leva T(n) para construir/emitir. - Espaço: O(n) adicional para o vetor corrente; se armazenarmos todas as combinações, espaço total O(n · 2^n). Observações: escolha entre iteração e recursão depende de restrições de pilha; ambas produzem o mesmo crescimento assintótico.

Explicação

O pseudocódigo apresentado gera todas as combinações de variáveis booleanas de forma eficiente, utilizando tanto uma abordagem iterativa quanto uma recursiva. A análise de complexidade temporal e espacial demonstra que, independentemente da abordagem escolhida, o crescimento das combinações é exponencial em relação ao número de variáveis, refletindo a natureza do problema. A escolha entre iteração e recursão permite flexibilidade na implementação, dependendo das limitações do ambiente de execução.

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

algoritmo e complexidade

📌 Objetivo

avaliacao

🧱 Pré-requisitos

variáveis booleanas · pseudocódigo

📚 Reveja

Revisar conceitos de algoritmos e análise de complexidade.

⚠️ Erro mais comum

O aluno pode confundir a quantidade de combinações possíveis, não considerando que cada variável pode ser verdadeira ou falsa, resultando em 2^n combinações.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

abstrato

Questões parecidas com resolução

Todas as questões de Algoritmos

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