PDA

Ver la Versión Completa : Parser Foreval compilador de expresiones matematicas


fcios
29-07-2011, 06:32:43
Hola y gracias por adelantado

quiero hacer andar correctamnete este parser "Foreval" freeware ya que anda muy rápido y puede trabajar con arrays, como ejemplo la expresion

(x*sin(2*t*x-1)^2-y*cos(2*t*x-1)^3)/(x*sin(2*t*x-1)^2+y*cos(2*t*x-1)^3)+exp(x)*(sinh(x)+cosh(x)+tanh(x))+ad[n]*sum(ad)*sum(1,2,x,sum(x,y))

en mi cpu P4 3 Ghz x 4 nucleos hace 6531 evaluaciones / ms

el problema es que cuando cierro la aplicacion me aparece
runtime error 216 at 003A312A

y no puedo ver la línea de error ya que es una DLL, el fuente de esa dll está pero mis conocimientos no llegan a hacerlo funcionar reemplazando la dll por los .pas

se puede bajar desde http://dmanx.narod.ru/

si conocés otro parser que trabaje con arrays lo pruebo con gusto
me refiero a que si tengo definido por ejemplo el array miarray = array of Double
puedo pedirle que calcule "2 + miarray[1]"

utilizo Delphi 7

muchas gracias

fcios
29-07-2011, 14:54:03
Bueno lo pude compilar sin generar y utilizar la dll como dice en el ReadMe(eng).txt

(b) or directly to connect it to the project (comment in 'use': Foreval_Lib and set key 'STRING' in Foreval_Lib.pas)

en el foreval_Lib
cambie
{.$DEFINE STRING} a {$DEFINE STRING}

y en mi uses agregue
,Foreval_Lib //At direct connection (without dll) to delete Forevaldll to add Foreval_Lib; in Foreval_Lib set key STRING


mi error era que estaba banqueando variables que se eliminan solas cuando se ejecuta el finalization

muchas gracias