Você está na página 1de 10

SBC

2008

Anais do XXVIII Congresso da SBC


WEI Workshop sobre Educao em Computao

12 a 18 de julho
Belm do Par, PA

JAVATOOL: UMA FERRAMENTA PARA ENSINO DE


PROGRAMAO
Marcelle Pereira Mota1,2, Lis W. Kanashiro Pereira1,2, Eloi Luiz Favero1,2
1

Laboratrio de Ensino a Distncia (LabEAD)


Universidade Federal do Par (UFPA)
Belm PA Brasil

Programa de Ps-Graduao em Cincia da Computao (PPGCC)


Universidade Federal do Par (UFPA)
Belm PA Brasil
{cellemota, liskanashiro}@gmail.com, favero@ufpa.br

Abstract. This paper describes a tool called JavaTool, whose objective is to


facilitate the programming learning in introductory disciplines of computer
science courses. The proposal is based on the development of an interpreter
for Java language, to make the animation and the detailed visualization of
information about the code and its execution possible. The main goal is to
allow the students to have a better performance in programming disciplines.
Resumo. Este artigo apresenta a ferramenta JavaTool, cujo objetivo
facilitar a aprendizagem de programao, utilizando Java como linguagem de
ensino em disciplinas introdutrias do curso de computao. A proposta
baseia-se no desenvolvimento de um interpretador para a linguagem Java, de
forma a possibilitar a animao e visualizao detalhada de informaes do
cdigo e de sua execuo. A meta final permitir aos estudantes obter um
melhor rendimento nessas disciplinas de programao.

1. Introduo
O baixo ndice de assimilao dos estudantes nas disciplinas cujos requisitos exigem o
conhecimento de programao tem sido um grande problema enfrentado em muitas
instituies (Santiago e Dazzi, 2004). Dada a importncia da atividade de programao
em um curso de cincia da computao, uma das abordagens mais comuns para
enfrentar esse problema o desenvolvimento de ferramentas que venham a facilitar o
ensino de programao de forma didtica e pedaggica.
A aprendizagem de conceitos iniciais de programao difcil para muitos
estudantes iniciantes. Uma das razes, de acordo com Sajaniemi e Kuittinen (2003),
que os programas envolvem entidades abstratas como: construes formais de loops,
ponteiros, arrays, etc., conceitos estes que os estudantes no esto familiarizados. Dessa
maneira, mtodos e tcnicas so necessrios para auxiliar os estudantes a alcanarem
uma aprendizagem inicial destes conceitos de programao.
Ao longo dos anos, muitas ferramentas tm sido desenvolvidas para o ensino de
programao, utilizando as mais diversas abordagens, como animao de algoritmos,
utilizao de pseudo-linguagens, entre outras (Almeida et. al, 2004; Brown, 1988;
Moreno et. al, 2004; Silva e Favero, 2005), entretanto, ainda no existe uma ferramenta

SBC 2008

127

SBC

2008

Anais do XXVIII Congresso da SBC


WEI Workshop sobre Educao em Computao

12 a 18 de julho
Belm do Par, PA

para ensino de conceitos introdutrios de programao utilizando uma sintaxe


simplificada da linguagem Java.
Esse artigo apresenta o desenvolvimento da ferramenta JavaTool, cujo objetivo
facilitar o ensino de programao auxiliando professor e estudante no processo de
aprendizagem. Busca-se desenvolver uma soluo prpria que possibilita uma completa
explorao do cdigo fonte, via um interpretador.
A idia desta ferramenta surgiu do sucesso de uma ferramenta similar
desenvolvida para linguagem SQL (Lino et. al, 2007) que mostrou uma melhora de
performance de 10% a 15% no conceito final dos estudantes, comparando-se turmas que
usaram a ferramenta com as turmas que no a utilizaram. O JavaTool aproveitou a infraestrutura do AVA (Ambiente Virtual de Aprendizagem) do LabSQL. Assim este
trabalho foca mais especificamente na ferramenta de animao de cdigo Java.
Esse artigo est organizado em cinco sees incluindo esta. A seo 2 apresenta
alguns trabalhos relacionados ferramenta; a seo 3 apresenta o JavaTool e trata dos
seus aspectos de implementao; a seo 4 trata das principais funcionalidades do
JavaTool e um exemplo de sua utilizao e a seo 5 apresenta as concluses e
trabalhos futuros.

2. Trabalhos relacionados
Na literatura encontram-se diversas ferramentas desenvolvidas para o ensino de
programao. Um dos mtodos utilizados o uso do pseudocdigo, uma forma genrica
de escrever um algoritmo, utilizando uma linguagem mais informal, podendo ser
entendida por qualquer pessoa, sem necessidade de conhecer a sintaxe de nenhuma
linguagem de programao. O uso do pseudocdigo tambm pode auxiliar a escrever
um programa menor e mais fcil de ser entendido. Nesta categoria, Almeida et. al,
(2004) descrevem o ambiente AMBAP e Silva e Favero (2005) descrevem o ambiente
VisualPseudo. A utilizao de pseudocdigo tambm apresenta uma desvantagem, a
qual a falta de padronizao. Dada a sua natureza no estruturada, um tanto difcil de
padroniz-lo, logo, um programador pode no entender a lgica de um programa escrito
por outra pessoa (Halstead, 2007).
Noutra linha, Gomes e Mendes (2000) descrevem o ambiente SICAS, centrado
em fluxogramas com smbolos diagramticos, focando mais a estrutura dos algoritmos.
A linha de visualizao de programas vem sendo pesquisada h algum tempo e consiste
no uso da computao grfica e da animao para auxiliar a ilustrar e a apresentar
programas de computador, processos e algoritmos. Programas para visualizao podem
ser utilizados no ensino para ajudar os estudantes a entenderem como os algoritmos
funcionam e tambm podem ser usados para auxiliar os programadores a
compreenderem melhor o seu cdigo (Frick, 1997).
A visualizao de programas foca na representao grfica da execuo de um
programa e seus dados. A representao visual de dados e da seqncia de execuo de
um programa pode proporcionar aos usurios valiosa informao em muitos aspectos do
desenvolvimento e da execuo de um programa, como depurao ou comparao entre
diferentes algoritmos em termos de desempenho, por exemplo. (Ellershaw e Oudshoorn,
1994).

SBC 2008

128

SBC

2008

Anais do XXVIII Congresso da SBC


WEI Workshop sobre Educao em Computao

12 a 18 de julho
Belm do Par, PA

Uma das abordagens da visualizao de programas a animao de algoritmos,


que consiste em produzir visualizaes animadas de algoritmos, geralmente durante a
execuo de um programa. O mais conhecido sistema para visualizao de programas
o sistema BALSA (Brown, 1988). Nesta linha, o JEliot (Moreno et. al, 2004) um
sistema que permite a visualizao e animao da execuo de um cdigo em Java,
inclusive mostrando as estruturas de dados. Em termos de linguagem de programao o
JavaTool se assemelha ao JEliot, que anima cdigo Java, porm ao mesmo tempo
tambm o JavaTool difere dele, pois permite a animao de cdigo com sintaxe
simplificada, mais indicado para o ensino de algoritmos.
Diante desse contexto, a motivao para o desenvolvimento do trabalho
apresentado nesse artigo criar uma ferramenta que tem como objetivo ser um ambiente
de desenvolvimento para ensino de conceitos introdutrios de programao utilizando
uma sintaxe simplificada da linguagem Java, onde o estudante pode: editar cdigo Java,
compilar, depurar e visualizar a execuo do cdigo. O JavaTool permite que o usurio
crie o cdigo e visualize o funcionamento do algoritmo, com suas respectivas estruturas
de dados, facilitando no apenas seu entendimento, mas tambm a posterior depurao
do cdigo.

3. A Ferramenta JavaTool
Uma das maiores dificuldades de um estudante de programao entender cada passo
da execuo do programa. Aprender a gramtica de uma linguagem de programao,
consertar erros de sintaxe em um programa, desenvolver novos algoritmos, escrever um
novo programa, depurar e consertar erros em um programa so as principais
dificuldades de um estudante que inicia um curso de programao, em ordem crescente
de dificuldade (Miyadera, 1999).
De acordo com os resultados obtidos em pesquisas no trabalho de Miyadera
(1999), so apresentados alguns requisitos para um sistema educacional: a) o sistema
deve exibir explanaes escritas junto com a animao do programa; b) os estudantes
preferem visualizar o cdigo dos programas, explicaes e animaes ao mesmo tempo;
c) os estudantes gostam de ter controle sobre a execuo da animao, o sistema deve
ento permitir a execuo do algoritmo continuamente, passo a passo, ir e voltar, e deve
permitir tambm o controle da velocidade da execuo da animao; d) a interao com
a animao melhora a aprendizagem, o sistema deve ento permitir entrada de dados
pelos usurios. A implementao da ferramenta proposta levou em considerao todos
estes requisitos.
O JavaTool uma ferramenta para auxlio ao ensino de programao, para ser
utilizada nas disciplinas iniciais de programao, nas aulas prticas de laboratrio.
Futuramente a ferramenta JavaTool dever ser integrada a um ambiente de ensino Web,
como por exemplo o Moodle (Moodle, 2008), podendo assim ser utilizada como uma
ferramenta de um laboratrio virtual de programao. No ambiente Web, o estudante
poder (i) examinar a animao de um exemplo de algoritmo presente no contedo
ministrado pelo professor e /ou poder (ii) selecionar um exerccio proposto pelo
professor e desenvolver uma soluo. O estudante poder editar cdigo Java, compilar,
depurar o cdigo e visualizar a animao do cdigo.
No laboratrio, a idia central do ambiente animar cdigos de algoritmos
escritos com uma sintaxe reduzida da linguagem Java em um curso inicial de

SBC 2008

129

SBC

2008

Anais do XXVIII Congresso da SBC


WEI Workshop sobre Educao em Computao

12 a 18 de julho
Belm do Par, PA

programao, sem abordar conhecimentos relacionados programao orientada a


objetos. A ferramenta tem como principal objetivo apoiar estudantes de forma didtica
durante o incio da aprendizagem de programao utilizando a linguagem Java. Isto
proposto atravs do mtodo de visualizao de programas, em forma de animaes 2D,
fazendo com que a abstrao dos cdigos de algoritmos seja visvel para o aprendiz.
Para realizar os objetivos a ferramenta JavaTool implementa um editor que
conhece a sintaxe do cdigo Java e facilita a correo de erros de sintaxe. Depois
permite animar o cdigo, via um interpretador. D suporte animao da maior parte
dos conceitos que so ensinados em disciplinas de programao; permite que os dados
sejam representados em vrios formatos para exibio (binrio, hexadecimal, etc.);
permite a visualizao de um histrico da execuo do programa de forma grfica e
tambm na forma de texto.
Na Figura 1 apresentada a interface do JavaTool. Como a maioria dos
aplicativos, contm um menu com funes bsicas como: criar novo arquivo, abrir
arquivo, salvar arquivo, editar arquivo, imprimir, um menu de ajuda, entre outras
funes. O cdigo escrito na rea de EDIO e os resultados de sada do programa,
incluindo possveis erros que sero exibidos no CONSOLE. A partir do momento que o
usurio clica o boto play no menu da rea de ANIMAO o cdigo animado. A rea
designada HISTRICO corresponde a uma descrio textual do que aconteceu durante
cada passo da animao. A rea ANIMAO tambm exibe o histrico na forma de
imagens, podendo ser visualizadas por meio dos botes no menu de animao: seta para
direita e seta para esquerda.

Figura 1. Interface do JavaTool

SBC 2008

130

SBC

2008

Anais do XXVIII Congresso da SBC


WEI Workshop sobre Educao em Computao

12 a 18 de julho
Belm do Par, PA

3.1. Aspectos de Implementao


Foi desenvolvido um compilador prprio para a ferramenta, composto de trs partes:
analisador lxico, analisador sinttico e analisador semntico. O analisador lxico foi
gerado por meio de um gerador de analisador lxico e sinttico (JavaCC) e foi adaptado
para a ferramenta. J os analisadores sinttico e semntico foram desenvolvidos de
modo que todos os parmetros pudessem ser controlados para que se pudesse extrair o
mximo de informao do cdigo fonte para a posterior animao da execuo. O
desenvolvimento dos analisadores sinttico e semntico foi importante tambm no que
diz respeito depurao do cdigo fonte e tratamento de erros, para a exibio de
mensagens de erro de forma que o usurio fosse melhor direcionado na correo do(s)
erro(s).
A Figura 2 mostra as etapas de processamento que acontecem durante a
execuo da ferramenta. Aps sua edio, o cdigo fonte passa pela anlise lxica, onde
transformado em uma fita de tokens, que serve de entrada para a anlise sinttica.
Na anlise sinttica so reconhecidos erros da sintaxe da linguagem. Nesse momento de
transio gerado um cdigo intermedirio para o avaliador. O avaliador quem realiza
as operaes e atribuies especificadas no cdigo fonte e ao mesmo tempo gera um
cdigo intermedirio para a animao.

Figura 2. Etapas de processamento

4. Interface e Funcionalidades do JavaTool


Buscou-se projetar uma interface que no fosse complexa para estudantes iniciantes no
estudo de programao. Alm disso, procurou-se tambm seguir os requisitos de uma
ferramenta educacional propostos por Miyadera (1999). Os recursos da interface
propostos pelo JavaTool so:

SBC 2008

Animao do cdigo: ao clicar no boto play, aps a edio do cdigo fonte, o


cdigo compilado e, caso no existam erros de compilao, a animao
exibida no painel de animao. A interface possui quatro reas, baseando-se no
trabalho de Moreno et. al (2004): a) rea para variveis do tipo String e tipos
primitivos, onde so declaradas as variveis; b) rea para vetores, onde so
declarados e inicializados os vetores, c) rea para constantes, de onde saem as

131

SBC

2008

Anais do XXVIII Congresso da SBC


WEI Workshop sobre Educao em Computao

12 a 18 de julho
Belm do Par, PA

constantes que so utilizadas no cdigo fonte; d) rea para avaliao: onde so


avaliadas as expresses e ficam registradas graficamente e textualmente as
operaes que so realizadas durante a animao(avaliao de expresses,
entrada de dados, chamadas de mtodos, etc.). Durante a animao, a linha do
cdigo fonte que est sendo animada destacada com a cor laranja.

Entrada de dados: durante a operao de leitura de dados via teclado, exibe-se


uma janela para que o usurio entre com o valor. Ao terminar de digitar o valor
o usurio pressiona a tecla Enter do teclado ou clica com o mouse sobre o boto
OK para que a animao prossiga.

Visualizao dos dados: durante a animao ou aps esta, ao clicar em cima de


uma varivel no painel de animao, o usurio poder visualizar o valor desta
em diversos formatos (decimal, binrio, hexadecimal ou octal), dependendo do
tipo da varivel. Esta funcionalidade serve, por exemplo, para que o aluno
visualize operaes com bits (operaes de deslocamento de bits, etc.). Outro
recurso a utilizao de cores diferentes para cada tipo (int, double, etc) e
tambm para valores constantes, valores provindos da entrada de dados, valores
resultantes da avaliao de uma expresso e valores das variveis.

Histrico da execuo: com essa funo, o usurio no precisa executar a


animao novamente caso queira rever algum detalhe, ficando todas as
informaes registradas visualmente e tambm na forma de texto. O usurio
pode visualizar o histrico passo a passo, bastando clicar nos botes seta para
direita e seta para esquerda.

Mensagens de erro: O JavaTool exibe, no painel de animao, os erros de


compilao e de execuo, caso existam no cdigo fonte. So exibidas
mensagens que contm uma descrio do erro (por exemplo: diviso por zero),
a linha que contm o erro e o caractere onde possivelmente se encontra o erro.

O JavaTool implementa alguns recursos da linguagem Java. Os recursos que so


possveis de se animar no JavaTool so:

Todos os tipos primitivos(byte, short, int,long, float, double, char, boolean) e


String;

Arrays do tipo unidimensional;

Estruturas de seleo if-then, if-then-else e switch;

Estruturas de repetio while, do-while e for;

Chamada de mtodos.

Alguns mtodos da classe Math(ceil, floor, max, min, sqrt, pow, random, round)
e da classe String(length, charAt, toUpperCase, toLowerCase, substring, trim,
replace, valueOf);

Para facilitar a edio do cdigo Java no JavaTool, optou-se por simplificar em


alguns aspectos a escrita da linguagem Java utilizada. A Figura 3 mostra um exemplo de
um cdigo Java normal e a Figura 4 mostra um cdigo com as mesmas operaes com a
sintaxe simplificada do JavaTool:

SBC 2008

132

SBC

2008

Anais do XXVIII Congresso da SBC


WEI Workshop sobre Educao em Computao

12 a 18 de julho
Belm do Par, PA

Figura 3. Cdigo Java

Figura 4. Cdigo no JavaTool

No cdigo da Figura 4, a definio de classe e mtodo main no necessria, o


cdigo ficou reduzido para apenas trs linhas. As linhas 1, 5 e 6 so relativas leitura de
um inteiro. No necessrio o uso das trs primeiras linhas do cdigo anterior, com a
declarao import, definio da classe e do mtodo principal. Para a leitura do valor da
varivel num (valor do tipo int), utiliza-se o mtodo readInt, implementado para o
JavaTool (caso fosse um valor do tipo double, utiliza-se o mtodo readDouble, para
char, readChar, etc) , para no se envolver o conceito de instanciao de um objeto
(new Scanner, no cdigo da Figura 3, na linha 5), e nem fazer uso da classe System.
Idem para a sada de dados: foram implementados os mtodos println, para o JavaTool,
que equivale ao comando System.out.println no Java e print, que equivale a
System.out.print no Java.
A sintaxe simplificada tem um carter pedaggico, focada para o ensino de
programao/algoritmos no incio de um curso. Assim, permite-se rodar uma seqncia
de linhas de cdigo sem especificao de classes ou mtodos, omitindo-se as
declaraes para importao de classes, etc. A idia da sintaxe simplificada focalizar
os conceitos fundamentais de programao sem complicar o estudante com os conceitos
de programao que focam a programao em larga escala, que acontecer logo mais
adiante no curso. Assim o aluno ter uma boa base para cursar mais adiante uma
disciplina do tipo Programao em Java.
4.1. Exemplo de utilizao do JavaTool
Aqui mostrado um exemplo de utilizao do JavaTool na resoluo de um problema
comum abordado em cursos introdutrios de programao envolvendo o tpico
Estruturas de Repetio. Segue o enunciado do problema:
Deseja-se ler as notas dos alunos de uma turma e, aps isso, dizer qual a
quantidade de notas superiores a cinco; o programa termina com a digitao de um valor
negativo.

SBC 2008

133

SBC

2008

Anais do XXVIII Congresso da SBC


WEI Workshop sobre Educao em Computao

12 a 18 de julho
Belm do Par, PA

O cdigo correspondente editado no JavaTool exibido na Figura 5:

Figura 5. Cdigo no JavaTool

A varivel n representa o nmero de notas superiores a cinco. A condio para


sair do lao a digitao de um valor negativo. Ao se entrar com o valor 9.5, a condio
9.5 > 5 ento avaliada. Como se trata de um valor maior que cinco, a varivel n
incrementada em uma unidade (0+1 =1). Em seguida, entra-se com o valor 4.5, menor
que cinco, assim a varivel n no incrementada. Por fim, entra-se com o valor -1 e a
repetio se encerra. O resultado obtido no painel de animao do JavaTool exibido na
Figura 6, e o resultado no console exibido na Figura 7.

Figura 6. Resultado da execuo no painel de animao

SBC 2008

134

SBC

2008

Anais do XXVIII Congresso da SBC


WEI Workshop sobre Educao em Computao

12 a 18 de julho
Belm do Par, PA

Figura 7. Resultado da execuo no console

5. Concluses
O JavaTool foi desenvolvido para minimizar as dificuldades de aprendizes em
disciplinas de programao, por meio da animao da execuo do cdigo. A
ferramenta busca tornar possvel a visualizao do comportamento da execuo do
cdigo fonte. O JavaTool foi desenvolvido aps uma experincia de sucesso de nosso
grupo de pesquisa com um ambiente similar para programao de SQL, que j est num
estado mais desenvolvido. O ambiente para SQL (Lino et. al, 2007) foi utilizado nos
ltimos dois anos em dezenas de turmas e a sua avaliao mostrou uma melhora de
performance de 10% a 15% no conceito final dos estudantes, comparando-se turmas que
usaram a ferramenta contra turmas que no usaram a ferramenta, para a mesma
disciplina.
Acreditamos que a utilizao do JavaTool ter no mnimo um desempenho
similar. A partir deste ano estaremos utilizando como ferramenta nas atividades prticas
de laboratrio. Por outro lado estamos trabalhando na integrao dele com uma
plataforma virtual de ensino, por exemplo, o Moodle.
Acreditamos tambm que o uso de uma sintaxe reduzida da linguagem Java no
incio de um curso de programao permite focalizar mais nos conceitos essenciais de
programao; o estudante liberado da memorizao de detalhes excessivos da sintaxe
da linguagem. Por outro lado, com o uso de uma sintaxe simplificada do Java, o
estudante est sendo preparado j com conceitos da linguagem Java a ser estudada mais
adiante em disciplinas de programao mais avanadas.
As principais funcionalidades do JavaTool so: edio de cdigo Java,
compilao, depurao, visualizao da animao do cdigo, exibio dos dados em
vrios formatos (binrio, hexadecimal e octal) e a visualizao do histrico de execuo
da animao tanto grfico como textual.
O JavaTool foi pensado como uma ferramenta para uso em aulas de prtica de
programao, sejam presenciais ou na modalidade a distncia. Por exemplo, poder
animar os exemplos expostos pelo professor bem como os exemplos existentes em um
contedo digital de uma disciplina de programao. Como trabalhos futuros so
considerados os seguintes itens:

SBC 2008

Melhorar o editor de cdigo Java, incluindo mais funcionalidades, como o


recurso de auto-completar cdigo e anlise sinttica em tempo de digitao,
entre outras;

Incluir uma funcionalidade de anlise de performance de um cdigo Java,


permitindo ao estudante aprender a otimizar o cdigo desenvolvido, fazendo
verses alternativas mais eficientes, considerando o tempo de execuo e
consumo de memria;

135

SBC

2008

Anais do XXVIII Congresso da SBC


WEI Workshop sobre Educao em Computao

12 a 18 de julho
Belm do Par, PA

No ambiente AVA permitir a comparao em termos de complexidade e de


performance com a(s) proposta(s) pelo professor.

Referncias
Almeida, E. S., Herreral, J.D., Filho, L.J. S., Almeida, H. O., Costa, E.B., Vieira, B.L.,
Melo, M.D. (2004) Um Ambiente Integrado para auxlio ao Ensino de Cincia da
Computao, In: Revista Digital da CVA, Vol. 2 n8.
Brown, M. H. (1988) Algorithm Animation. MIT Press.
Ellershaw, S., Oudshoorn, M. Program Visualization - The State of the Art.
Department of Computer Science, University of Adelaide, 1994. Disponvel em:
<http://citeseer.ist.psu.edu/ellershaw94program.html>. Acesso em: 11 de Novembro
de 2007.
Frick, A. Software Visualization. 1997. Disponvel em: <http://www.info.unikarlsruhe.de/~frick/SoftVis/>. Acesso: 30 de Outubro de 2007.
Gomes, A., Mendes, A., (2000) Suporte aprendizagem da programao com o
ambiente SICAS, V Congresso Ibero-Americano de Informtica Educativa, Vina
del Mar - Chile.
Halstead, N. Uses of Pseudo Code in Development. 2007. Disponvel em:
<http://blog.assembleron.com/2007/06/03/uses-of-pseudo-code-in-development/3>.
Acesso em: 11 de Novembro de 2007.
Lino, A. D. P., Silva, A. S., Harb, M.P.A.H., Favero, E.L., Brito, S.R. (2007)
Avaliao automtica de consultas SQL em ambiente virtual de ensinoaprendizagem. Conferencia Ibrica de Sistemas y Tecnologas de la Informacin.
CISTI .
Miyadera, Y., Huang, N., Yokoyama, S. A programming language education system
based on program animation. Tokyo Gakugei University, 1999. Disponvel em
<http://www.ifip.org/con2000/iceut2000/iceut08-04.pdf>. Acessado em 12 de
Novembro de 2007.
Moodle (2008) Disponvel em: <http://moodle.org/>. Acessado em 12 de maio de
2008.
Moreno, A., Myller, N., Sutinen, E., Ben-Ari, M. (2004) Visualizing Programs with
Jeliot 3, Proceedings of the Advanced Visual Interfaces.
Sajaniemi, J., Kuittinen, M. (2003) Program Animation Based on the Roles of
Variables. Proceedings of the 2003 ACM symposium on Software visualization. San
Diego, California. P. 7 ff.
Santiago, R., Dazzi, R.,Rudimar L.S. (2004) Ferramenta de apoio ao ensino de
algoritmos In: SEMINRIO DE COMPUTAO, Blumenau.
Silva, M.A.B., Favero, E.L.(2005) Compiladores e Interpretadores Uma Abordagem
Prtica.

SBC 2008

136

Você também pode gostar