desenvolvendo uma ferramenta de auxílio à aprendizagem de algoritmos

17
Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos Acadêmica: Andréia Cristina dos Santos Gusmão Orientador: Prof. Artur Luís Ribas Barbosa

Upload: sanura

Post on 08-Jan-2016

26 views

Category:

Documents


2 download

DESCRIPTION

INCIAÇÃO CIENTÍFICA DO INATEL - INICITEL 2010. XXII ENCONTRO DE INICIAÇÃO CIENTÍFICA E TECNOLÓGICA DO INATEL - INCITEL 2010. Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos. Acadêmica: Andréia Cristina dos Santos Gusmão - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de

Algoritmos

Acadêmica: Andréia Cristina dos Santos GusmãoOrientador: Prof. Artur Luís Ribas Barbosa

Page 2: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Visão Geral

E agora? como resolver esse problema?

Page 3: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Visão Geral

Ah, agora entendi o que

é lógica!

Page 4: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Visão Geral

E com a lógica, posso escrever meus algoritmos...

Page 5: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Através do Teste de mesa?

Como testar os algoritmos?

E agora? Como saber se meu código está correto?

Page 6: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Exemplo de Teste de Mesa

Page 7: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Através de linguagem de programação?

Como testar os algoritmos?

Page 8: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Exemplo Java

Page 9: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Exemplo C

Page 10: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Exemplo Delphi

Page 11: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Desenvolver uma ferramenta que interprete códigos em algoritmos.

Objetivo

Page 12: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Pesquisa Aplicada

Linguagem Java

Framework ANother Tool for Language Recognition (ANTLR)

Ambiente gráfico ANTLRWorks

Metodologia

Page 13: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

• Ferramenta JPortugol e Resultados encontrados até o

momento

Demonstração

Page 14: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Compilador x Interpretador

Um Compilador. Fonte: Aho et al (1995, p. 1)

Estrutura utilizada: Analisador Léxico, Analisador Sintático e Analisador Semântico.

Conceitos Envolvidos

Page 15: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Ferramenta para auxiliar nos testes de algoritmos, como objetivo de contribuir para a

motivação.

Aprender algoritmos para desenvolver em uma linguagem de programação.

Conclusão

Page 16: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

AHO, Alfred V.; SETHI, Ravi; ULLMAN, Jeffrey D. Compiladores: princípios, técnicas e ferramentas. Tradução Daniel de Ariosto Pinto. Rio de Janeiro: LTC, 1995.

CRISTÓVÃO, Henrique Monteiro. Aprendizagem de Algoritmos num Contexto Significativo e Motivador: Um Relato de Experiência. In.: XVI Workshop de Educação em Computação, XXVIII Congresso da Sociedade Brasileira de Computação, Belém do Pará - Pará, 2008. p. 30-40. Disponível em: http://www.prodepa.gov.br/sbc2008/anais/pdf/arq0123.pdf . Acesso em: 07 abr. 2010.

DELAMARO, Márcio Eduardo. Como Construir um Compilador: Utilizando Ferramentas Java. São Paulo: Novatec, 2004.

MANZANO, José A. N. G.; OLIVEIRA, Jayr F. Estudo dirigido de Algoritmos. 11. ed. São Paulo: Érica, 2007. p.1-18.

PARR, Terence. The Definitive ANTLR Reference: Building Domain-Specific Languages. EUA: Pragmatic Programmer, 2007.

Referências

Page 17: Desenvolvendo uma Ferramenta  de Auxílio à Aprendizagem de Algoritmos

Obrigada!

“Existe a crença de que só se pode programar o que se compreende perfeitamente. Essa crença ignora a

evidência de que a programação, como qualquer outra forma de escrita, é um processo experimental.

Programamos como redigimos, não porque compreendemos, mas para chegar a compreender.”

(Joseph Weizenbaum)