Voltar para Computação Ensino Médio 1º EM Ano
EM13CO03Computação Ensino Médio · 1º EM Ano · Ensino Médio

Identificar o comportamento dos algoritmos no que diz respeito ao consumo de recursos como tempo de execução, espaço de memória e energia, entre outros

CE

Escrito pela equipe pedagógica do Profez

Conteúdo revisado por professores com experiência em sala de aula · Atualizado para 2026

Olha só, sobre essa habilidade EM13CO03 da BNCC, o que a gente precisa entender é que o aluno tem que sacar como os algoritmos consomem recursos. Isso aí inclui tempo de execução, espaço de memória e até energia. Na prática, quer dizer que eles têm que saber avaliar se um algoritmo é eficiente ou não. Tipo assim, se você quer fazer um programa rodar rápido ou que não pese demais no computador ou celular, tem que saber escolher o algoritmo certo pra isso. Pros meninos do 1º ano, isso se conecta com o que eles viram no 9º ano, quando começamos a falar sobre lógica de programação e algumas coisinhas básicas de algoritmos.

Agora vou te contar três atividades que faço com a galera pra trabalhar essa habilidade na prática. A primeira delas é uma comparação entre dois algoritmos simples de ordenação: o Bubble Sort e o Quick Sort. O material que uso são planilhas impressas com passos dos dois algoritmos e deixo também os computadores disponíveis pra eles testarem na prática. Divido a sala em grupos de quatro e dou mais ou menos uma hora pra atividade. Eles comparam qual dos dois é mais rápido e eficiente em diferentes situações. A reação dos alunos é bem interessante porque eles geralmente ficam surpresos ao ver como o Quick Sort é muito mais rápido pra listas grandes, enquanto o Bubble Sort pode funcionar bem em listas pequenas. Da última vez, o João até comentou "Caraca, professor! O Bubble Sort parece uma tartaruga comparado com o Quick Sort". Esse tipo de insight é exatamente o que eu busco.

A segunda atividade envolve medir quanto de memória um algoritmo consome. Aqui eu uso um programa bem básico em Python e ensino os meninos a usarem algumas ferramentas de monitoramento do sistema. Organizamos a turma em duplas e dou pros alunos cerca de 50 minutos. Eles editam o código do algoritmo pra ver como cada mudança impacta no consumo de memória. Na última vez que fizemos isso, a Ana e a Mariana acharam um jeito de otimizar o código e ficaram super contentes quando viram que economizaram bastante memória. A Mariana até brincou dizendo "Profe, tô me sentindo uma hacker!". É muito legal ver esse tipo de empolgação.

A terceira atividade é sobre consumo de energia dos algoritmos, que é algo mais abstrato pra eles mas bem relevante hoje em dia. Eu levo uma apresentação simples sobre como os algoritmos podem afetar a bateria dos dispositivos móveis e depois a gente faz um experimento com os celulares deles mesmos. Divido a turma em grupos, dou uns 40 minutos pra eles rodarem diferentes tipos de aplicativos (que usam algoritmos diversos) e medirem o consumo de bateria usando aplicativos específicos. O pessoal fica bem envolvido porque mexem nos próprios celulares, né? Da última vez, teve até uma competição saudável pra ver quem conseguia otimizar mais a vida útil da bateria enquanto usava um app pesado. O Lucas ganhou dessa vez!

Essas atividades não só ajudam os alunos a entenderem melhor os conceitos por trás dos algoritmos, mas também os deixam mais engajados na aula porque eles podem ver na prática como essas coisas afetam nosso dia a dia. É gratificante ver eles fazendo conexões entre o que estudam e como isso se aplica no mundo real. E acima de tudo, dá uma satisfação danada quando algum deles chega depois da aula e diz "Professor, comecei a pensar diferente sobre como usar meu celular".

Então é isso! Esses momentos são ouro puro pra mim como professor. Se alguém tiver mais dicas ou ideias pra trabalhar essa habilidade, tô sempre aberto a ouvir!

E aí, como que eu sei que os meninos realmente entenderam essa parada dos algoritmos e o consumo de recursos sem fazer uma prova formal? Olha, a sala é um lugar cheio de sinais quando você presta atenção. Primeiro, quando tô circulando pela sala e vejo um aluno explicando pro outro de um jeito que não deixa dúvida, é um baita sinal de que ele entendeu. Teve uma vez que o João tava ali no canto, meio que desenhando na folha os passos de um algoritmo e a Maria chegou toda perdida perguntando como ele sabia que aquele jeito era o mais rápido. A resposta dele foi direta: "Olha, Maria, se a gente pensar no tempo que o computador leva pra fazer cada passo, esse jeito aqui tem menos passos e usa menos memória". Ali eu soube que o João tinha pegado a ideia.

Outro momento legal é quando eles conversam entre eles e começam a usar termos que a gente trabalhou em aula sem nem perceber. Tipo, eles começam a discutir qual algoritmo seria mais eficiente pra resolver um problema tipo otimização em jogos ou em apps que usam no dia a dia. Você percebe que entenderam quando dão aqueles exemplos práticos do cotidiano e veem o papo sobre eficiência como algo natural.

Agora, falando dos erros mais comuns, nossa, tem uns clássicos. O Pedro, por exemplo, sempre confunde eficiência com eficácia. Ele acha que só porque um algoritmo resolve o problema tá tudo certo, mas muitas vezes não vê que tem outros que resolvem mais rápido ou com menos uso de memória. Eu percebo isso quando ele termina uma atividade muito antes da galera e já quer partir pra outra. Aí eu chego junto e falo: "Pedro, beleza que você resolveu, mas dá uma olhada nessa outra solução aqui. O que acha do tempo de execução dela comparado com a sua?". E daí ele vai percebendo as nuances.

Outra confusão comum é com a Isabela. Ela costuma repetir comandos ou partes do código sem necessidade alguma só porque viu em algum lugar ou acha que vai funcionar melhor assim. Isso acontece muito porque eles ainda estão pegando o jeito de otimizar os passos do algoritmo. Quando pego isso na hora, chamo ela no canto e mostro: "Isa, olha aqui como dá pra fazer o mesmo com menos linhas. Vê se assim não fica mais enxuto e rápido". É algo bem visual que ajuda bastante.

Agora, sobre as adaptações pra ajudar o Matheus e a Clara, eu acabo mudando umas coisas nas atividades pra acomodar as necessidades deles. O Matheus tem TDAH e precisa de algo mais direto e engajante. Então com ele eu uso muito jogo interativo ou simuladores onde ele possa ver imediatamente as consequências das escolhas dele no algoritmo. Coisas visuais ajudam ele a manter o foco e entender melhor o conceito.

Já a Clara tem TEA e precisa de uma abordagem mais estruturada. Com ela, sempre explico os passos com antecedência e depois deixo ela trabalhar no próprio ritmo. Outra coisa que funciona bem é usar cartões visuais com exemplos de algoritmos já resolvidos, assim ela pode observar o processo completo antes de tentar por conta própria.

A coisa mais desafiadora às vezes é gerir o tempo pra dar conta de todas essas adaptações sem deixar ninguém de lado. Já tentei fazer todo mundo trabalhar ao mesmo tempo em atividades iguais e não deu certo. Depois entendi que dividir em grupos com tarefas específicas faz mais sentido. O Matheus geralmente trabalha melhor num ritmo ligeiro enquanto a Clara precisa daquela calma.

O legal é ver como cada aluno evolui no próprio ritmo e do jeito deles. No final das contas, é sobre encontrar aquele ponto onde cada um entende do próprio jeito.

E aí é isso, galera! Espero que essas histórias ajudem vocês também. Se tiverem dicas ou quiserem trocar experiências parecidas, tô por aqui pra continuar esse papo. Valeu!

Gere materiais prontos para esta habilidade

Plano de aula, lista de exercícios ou avaliação — tudo com o código EM13CO03 incluído.

Criar material em 30 segundos

Grátis para começar. Sem cartão.