Atividades sobre Estratégias de solução de problemas com gabarito — 6º ano, 7º ano, 8º ano, 9º ano (EF69CO04)
AS
Alexandre Lombardi dos Santos 09 de setembro de 2026 8 min de leitura 60
Atividades e questões com gabarito para trabalhar decomposição e programação em Computação do 6º ao 9º ano. Veja como transformar a habilidade EF69CO04 em aula e avaliação.
Quando recebo um código da BNCC no planejamento, a primeira pergunta que me faço é: como eu transformo isso numa aula que os alunos entendam e numa avaliação que meça o que eu realmente ensinei? Com a EF69CO04 não foi diferente. Ela aparece na área de Computação e pede um trabalho que muitos colegas nunca fizeram antes, porque não envolve necessariamente um computador ligado.
Neste texto eu conto como eu entendo essa habilidade, que ideias uso em sala e como montei avaliações com gabarito comentado. Se você precisa de questões prontas, elas estão mais abaixo.
O que a habilidade EF69CO04 pede, de verdade?
Construir soluções de problemas usando a técnica de decomposição e automatizar tais soluções usando uma linguagem de programação.
Na prática, a habilidade pede que o aluno pegue um problema grande e complicado, quebre em pedaços menores e fáceis de resolver e, depois, registre essa solução de forma que um computador consiga executá-la. Eu traduzo para o meu aluno assim: antes de programar, aprenda a dividir o problema. Decomposição é o passo que vem antes de qualquer linha de código. Sem ela, o aluno tenta resolver tudo de uma vez, se perde e desiste. Com ela, cada parte vira uma tarefa pequena, e a automação entra como o passo final, quando a sequência de ações já está clara e pode ser repetida pelo computador sem erro.
Como trabalhar EF69CO04 em sala?
Sem laboratório caro, eu uso quatro ideias que funcionam bem em qualquer escola:
Organizar a festa da turma: peço para os alunos planejarem uma festa junina ou um lanche coletivo, separando em tarefas como lista de convidados, compra, decoração e limpeza. Eles percebem sozinhos que decompor ajuda.
Receita passo a passo: escrevemos uma receita de bolo em etapas numeradas e depois um colega tenta seguir só o que está escrito. Quando falta um passo, a turma entende o que é um algoritmo bem decomposto.
Robô de papel: um aluno dá instruções a outro, que só pode andar pela sala seguindo exatamente o que foi dito. É uma forma barata de ensinar sequência e subproblemas.
Pseudocódigo no quadro: escolhemos um problema simples, como calcular a média de notas da turma, e dividimos em funções menores antes de escrever qualquer comando real.
Como avaliar essa habilidade?
Uma boa questão sobre EF69CO04 precisa cobrar que o aluno identifique a decomposição, não apenas memorize a palavra. Eu fujo de perguntas que só pedem a definição e prefiro situações do cotidiano em que o aluno precisa escolher a estratégia certa. O erro mais comum que vejo é avaliar só a sintaxe de uma linguagem, quando a habilidade é sobre pensar antes de programar. Outro erro é misturar estratégias parecidas, como decomposição, abstração e generalização, sem deixar claro a diferença entre elas.
Questões prontas de EF69CO04 (com gabarito comentado)
Questão 1: estratégia usada para separar a organização de uma festa
Para organizar uma festa para 100 convidados, Ana separou o trabalho em tarefas menores: fazer a lista de convidados, escolher o local, planejar o cardápio, enviar os convites e organizar as brincadeiras.
Qual estratégia da computação Ana utilizou ao separar a organização da festa em tarefas menores?
❌ A) Abstração — essa estratégia destaca as informações mais importantes e deixa de lado detalhes desnecessários, o que não é o caso aqui.
❌ B) Algoritmo — organiza instruções em sequência de passos, mas Ana não descreveu uma sequência, e sim dividiu o problema.
✅ C) Decomposição — dividir um problema maior em partes menores e mais fáceis de resolver. A organização da festa foi separada em várias tarefas.
❌ D) Generalização — identifica características que servem para situações parecidas, e não separa uma tarefa grande em partes.
❌ E) Reúso — aproveita uma solução já criada em outra situação, o que não aparece no enunciado.
Questão 2: vantagem de variáveis locais em uma subrotina
Considere um algoritmo que calcula a média de notas por turma. Ao aplicar decomposição, qual vantagem de usar uma variável local para armazenar um dado temporário dentro de uma subrotina?
❌ A) Salvar dados temporários em um arquivo é uma boa prática em subrotinas, pois mantém os dados persistentes — usar arquivos para dados temporários é lento e impreciso.
❌ B) Armazenar dados em variáveis de classe simplifica o código e melhora a performance — variáveis de classe podem gerar acoplamento e efeitos colaterais.
❌ C) Utilizar constantes aumenta a flexibilidade — constantes não podem ser alteradas, o que limita as operações da subrotina.
❌ D) Usar variáveis globais facilita o acesso por qualquer parte do algoritmo — isso pode causar efeitos colaterais indesejados.
✅ E) Evita efeitos colaterais entre subrotinas, mantendo o estado encapsulado e reduzindo o acoplamento. Variáveis locais têm escopo limitado, então outras partes do algoritmo não alteram o dado sem querer.
Questão 3: recurso que mais reduz o trabalho repetitivo
Uma equipe precisa gerar cem relatórios com a mesma estrutura, mudando apenas os valores das turmas e das notas.
Qual recurso digital reduz mais o trabalho repetitivo nessa tarefa?
❌ A) Usar um editor de texto comum para copiar e colar manualmente — reaproveita parte do texto, mas ainda exige muitas ações manuais e repetidas.
❌ B) Gerar os relatórios manualmente e depois salvar os arquivos — salvar é consequência, não a causa da redução do trabalho.
❌ C) Escolher um modelo visual mais bonito — melhora a apresentação, mas não executa automaticamente as ações repetidas.
❌ D) Criar uma planilha com fórmulas para calcular as notas — fórmulas calculam valores, mas não automatizam a criação dos cem relatórios.
✅ E) Utilizar macros ou scripts para automatizar a sequência de ações repetidas. Eles repetem automaticamente tarefas padronizadas, reduzindo o trabalho manual.
Questão 4: característica da programação modular
Qual dos seguintes conceitos é uma característica da programação modular?
❌ A) Aumento da complexidade do código — a modularização visa reduzir a complexidade ao dividir o código em partes menores.
✅ B) Reutilização de código. A programação modular permite que módulos sejam reutilizados em diferentes partes do software.
❌ C) Dificuldade na identificação de erros — a modularização facilita encontrar erros, pois cada módulo pode ser testado isoladamente.
❌ D) Desempenho inferior ao código monolítico — o desempenho pode ser similar ou até melhor, dependendo da implementação.
❌ E) Necessidade de mais memória — a modularização não necessariamente aumenta o uso de memória.
Questão 5: finalidade do pensamento computacional
Qual é a principal finalidade do pensamento computacional na programação?
❌ A) Resolver problemas de forma aleatória — o pensamento computacional busca resolver problemas de forma sistemática.
❌ B) Criar códigos complexos sem planejamento — o planejamento é essencial para criar soluções eficazes.
✅ C) Entender e decompor problemas para solucioná-los. O pensamento computacional envolve dividir problemas complexos em partes menores.
❌ D) Aumentar a complexidade dos algoritmos — o objetivo é simplificar problemas, não complicá-los.
❌ E) Substituir a lógica matemática na programação — a lógica matemática continua sendo parte importante da programação.
Questão 6: definição correta de decomposição em algoritmos
Identifique a definição correta de decomposição em algoritmos.
❌ A) Unir várias partes de um problema em uma só solução — isso se refere à agregação de informações, não à decomposição.
✅ B) Dividir um problema complexo em partes menores. Essa é a essência da decomposição, facilitando a resolução.
❌ C) Aumentar a complexidade do problema original — decomposição busca simplificar.
❌ D) Reutilizar partes de um algoritmo anterior — isso se refere ao reúso, não à decomposição.
❌ E) Criar um problema novo baseado em um existente — isso envolve generalização, não decomposição.
Estas questões são um ponto de partida. Revise cada uma com a sua turma, adapte a linguagem à sua realidade e use o que fizer sentido para o seu planejamento. Bom trabalho na sala de aula!
Monte uma prova com questões como estas
O GeraProva busca questões com gabarito comentado e BNCC no acervo e monta a prova pronta para imprimir.