Показать полную графическую версию : Delphi интерпретатор формул
Roman Go
26-07-2003, 13:17
Мне необходимо вводить функцию строкой и по ней строить график, у меня есть интерпретатор, который по введенному выражению считает значение, а мне нужен массив значений, поэтому этот интерпретатор в данном случае несколько неудобен... может кто знает где можно найти интерпретатор у которого на выходе можно было бы получить массив значений для построения графиков, или любой другой интерпретатор, только чтобы можно было легко строить графики :help:
Roman Go
Эдакий псевдоко, ибо Дельфи не знаю:
procedure compute(a, b, step: real;
tmp_expr: string;
var result: {массив переменного размера или список} of real);
var
x, y: real;
tmp_expr: string;
begin
x := a;
while x < b do
begin
tmp_expr := expr;
заменить(tmp_expr, 'x', x);
y := eval(tmp_expr); {eval - функция вызова твоего интерпретатора}
result.добавить(y);
x := x + step;
end
end;
Решение влоб - парсинг выражения будет происходить каждый раз, но в принципе должно быть вполне приемлимо.
Ну и гугл никто не отменял: http://google.com.ru/search?q=script+interpreter+Delphi
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2024, Jelsoft Enterprises Ltd.