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] 
-------------------------------------------------------------------------

Responder a