Solução de Formulas Matemáticas
Olá,
Gostaria de saber se alguem conhece algo em delphi que me mostre o resultado de uma formula qualquer a partir de uma string.
Por exemplo:
var
AString : String;
ADouble : Double;
begin
ADouble := Calcula( AString );
ShowMessage(FloatToStr(ADouble));
end;
Qualquer ajuda será bem vindo, desde metodos até referencias :)
Gostaria de saber se alguem conhece algo em delphi que me mostre o resultado de uma formula qualquer a partir de uma string.
Por exemplo:
var
AString : String;
ADouble : Double;
begin
ADouble := Calcula( AString );
ShowMessage(FloatToStr(ADouble));
end;
Qualquer ajuda será bem vindo, desde metodos até referencias :)
Jonathan Schweder
Curtidas 0
Respostas
Joel Rodrigues
25/04/2013
Opa, dê uma olhada neste tópico: [url]http://stackoverflow.com/questions/1326258/mathematical-expression-parser-in-delphi[/url]
Se conseguir alguma coisa, avisa aê.
Abraço.
Se conseguir alguma coisa, avisa aê.
Abraço.
GOSTEI 0
Jonathan Schweder
25/04/2013
Encontrei alguns algoritmos, porém o que eu procuro é simplicidade então fiz um programa que realiza o calculo, para que interessar segue link de download :
[url]http://www.4shared.com/rar/zsiEYuUx/Calculadora.html[/url]
Apenas algumas considerações sobre essa primeira versão :
- Calcula apenas valores inteiros
- Deve haver pelo menos 1 espaço entre cada caracter. Ex.: '( 1 + 1 )'
- Realiza operações de +,-,*,/
- O calculo é feito de 2 em 2, ou seja, o valor ( 1 + 2 + 3 ) será calculado como resultado 3, o certo é ( ( 1 + 2 ) + 3 ) será 6
[url]http://www.4shared.com/rar/zsiEYuUx/Calculadora.html[/url]
Apenas algumas considerações sobre essa primeira versão :
- Calcula apenas valores inteiros
- Deve haver pelo menos 1 espaço entre cada caracter. Ex.: '( 1 + 1 )'
- Realiza operações de +,-,*,/
- O calculo é feito de 2 em 2, ou seja, o valor ( 1 + 2 + 3 ) será calculado como resultado 3, o certo é ( ( 1 + 2 ) + 3 ) será 6
GOSTEI 0
Joel Rodrigues
25/04/2013
Boa, Jonathan. Tudo tem um começo, depois é só evoluir.
Parabéns pela iniciativa.
Parabéns pela iniciativa.
GOSTEI 0
Jonathan Schweder
25/04/2013
Boa, Jonathan. Tudo tem um começo, depois é só evoluir.
Parabéns pela iniciativa.
Parabéns pela iniciativa.
Sim, estarei evoluindo a ideal esses dias, o objetivo é chegar em uma classe aonde você apenas passe a formula e ela te traz os resultados. Qualquer aplicação que faça algum calculo pode se beneficiar com isso :)
GOSTEI 0