Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos
description
Transcript of Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos
![Page 1: Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/1.jpg)
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](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/2.jpg)
Visão Geral
E agora? como resolver esse problema?
![Page 3: Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/3.jpg)
Visão Geral
Ah, agora entendi o que
é lógica!
![Page 4: Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/4.jpg)
Visão Geral
E com a lógica, posso escrever meus algoritmos...
![Page 5: Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/5.jpg)
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](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/6.jpg)
Exemplo de Teste de Mesa
![Page 7: Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/7.jpg)
Através de linguagem de programação?
Como testar os algoritmos?
![Page 8: Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/8.jpg)
Exemplo Java
![Page 9: Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/9.jpg)
Exemplo C
![Page 10: Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/10.jpg)
Exemplo Delphi
![Page 11: Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/11.jpg)
Desenvolver uma ferramenta que interprete códigos em algoritmos.
Objetivo
![Page 12: Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/12.jpg)
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](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/13.jpg)
• Ferramenta JPortugol e Resultados encontrados até o
momento
Demonstração
![Page 14: Desenvolvendo uma Ferramenta de Auxílio à Aprendizagem de Algoritmos](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/14.jpg)
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](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/15.jpg)
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](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/16.jpg)
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](https://reader036.fdocumentos.tips/reader036/viewer/2022062518/56813f9a550346895daa8a9f/html5/thumbnails/17.jpg)
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)