Ou dê uma olhada no JavaCC (http://www.webgain.com/products/java_cc/) e nos exemplos de gramáticas que estão no repositório (http://www.cobase.cs.ucla.edu/pub/javacc/). Se não me engano, na instalação do JavaCC já vem um exemplo para expressões matemáticas.
[]'s Cristofer -----Mensagem Original----- De: "Ana Paula Brandão Lopes" <[EMAIL PROTECTED]> Para: <[EMAIL PROTECTED]> Enviada em: quinta-feira, 16 de janeiro de 2003 09:06 Assunto: Re: [java-list] Solução de expressoes > Vc teria que converter a sua expressao para uma forma pos-fixada (tipo calculadora hp) e usar > uma árvore binária para avaliar a expressao. Seria bom dar uma olhada em algum livro de > estruturas de dados, principalmente árvores binárias ou vc terá um bocado de dor de cabeça. > > 13/01/03 08:51:20, "Gideoni Hudson" <[EMAIL PROTECTED]> wrote: > > > > > > > From: "Gideoni Hudson" <[EMAIL PROTECTED]> > > > > To: "Sou Java" <[EMAIL PROTECTED]> > > Date: Mon, 13 Jan 2003 08:51:20 -0200 > > Subject:[java-list] Solução de expressoes > > > > > > > > Amigos, > > > > > > Preciso criar uma classe capaz de resolver expressões com variáveis. > > O usuário entraria com a expressão, uma fórmula financeira, e a > > > > classe calcularia o resultado. > > Imagino algo semelhante a isto: > > > > class CalculaExpres{ > > float montante; > > > > float capital; > > float taxa; > > float tempo; > > > > //Aqui estaria definido os GETs e SETs necessário > > > > > > > > //O método abaixo será capaz de resolver qualquer expressão > > envolvendo as variáveis > > // montante, capital, taxa, tempo e CONSTANTES; > > //Ex: ( capital * taxa + tempo ) / (montante + 50) > > > > > > public float Calcular(String expressao) { > > //Este metodo irá ler a empressão contida na String, > > procurar o valores das variáveis e calcular o resultado. > > } > > > > > > } > > > > > > > > Grato, > > > > > > ________________________________ > > Gideoni Hudson da Silva Braga > > > > Analista de Sistemas > > > > Prevcaixa - Caixa de Previdência e Assistencia > > +55 31 3226-8707 - Ramal:120 > > [EMAIL PROTECTED] > +++++++++++++++++++++++++++++++++++ > Ana Paula Brandão Lopes, M. Sc. > Universidade Estadual de Santa Cruz > Ilhéus-BA > 73-680-5271 > +++++++++++++++++++++++++++++++++++ > > > > ------------------------------ LISTA SOUJAVA ---------------------------- > http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP > dúvidas mais comuns: http://www.soujava.org.br/faq.htm > regras da lista: http://www.soujava.org.br/regras.htm > historico: http://www.mail-archive.com/java-list%40soujava.org.br > para sair da lista: envie email para [EMAIL PROTECTED] > ------------------------------------------------------------------------- ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------