Um jogo de apoio ao aprendizado de conceitos de recursividade A Belesminha Um jogo de apoio ao aprendizado de conceitos de recursividade Autor: Flávio Roberto Orientadora: Jussara Almeida Co-orientadores: Luiz Chaimowicz Raquel Prates
Motivação A recursividade é o método de definir uma função em termos dela mesma Facilita a construção de programas Modelagem mais próxima do nosso raciocínio No entanto, se não usada devidamente, pode ser perigosa Condições de parada devem ser satisfeitas O custo computacional pode ser alto
Motivação Além disso... Aprender a programar com helloworld na saída padrão não atrai o interesse dos jovens da Geração Nintendo [Guzdial e Soloway, 2002] Um jogo pode cativar os alunos e engajá-los no estudo ou nos exercícios
Objetivo Fixar e exercitar o uso de recursão Motivar o aluno ao estudo Registro de ativação Pilha de execução Condição de parada Motivar o aluno ao estudo Tornar o aprendizado divertido
O Jogo O aluno dá comandos para a Belesminha percorrer um trajeto. Os comandos são: Ir para a frente ( f ) Virar 90º à direita ( d ) Virar 90º à esquerda ( e )
O Jogo Além disso, o aluno pode definir funções com os comandos: a(P): f f d a(P-1) c(P): f c(P-1) Desafio: Pegar todas as folhas Desempilhar as funções no final Restrição de comandos Restrição de tamanho da pilha
Interface
Interface Comandos
Interface Restrições Comandos
Interface Restrições Pilha de execução Comandos
Interface Restrições Área do jogo Pilha de execução Comandos
Interface Restrições Área do jogo Pilha de execução Mensagens Comandos
Interface Restrições Área do jogo Belesminha :D Pilha de execução Mensagens Comandos
Experimentos O programa está em sua quarta versão. Download (www.dcc.ufmg.br/~flavioro/belesminha) Experiência com alunos da disciplina AEDs II Jogo está sendo utilizado pela quarta turma Avaliação com usuários da 2ª versão demonstrou: Aumento da motivação Fixação dos conceitos de recursividade Problema com a metáfora da condição de parada Um nova avaliação será realizada em breve
Trabalhos Futuros Nova avaliação abrangendo a contribuição para o aprendizado Definição de progressões de níveis mais didáticas Desenvolvimento de um editor de desafios gráfico Sistema de ajuda ingame
A Belesminha Perguntas??