Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.10;
Скачать: CL | DM;

Вниз

Перевод формулы   Найти похожие ветки 

 
Тимур   (2003-06-27 17:56) [0]

Сделал я программу для построения графиков и возникла проблема: надо сделать так, чтобы при
введении формулы в Edit1, строился график. Ведь в Edit1 я ввожу формулу типа string, а само
выражение [к примеру cos(x)] определяется числовым значением.
Пока данные я ввожу в самой программе. Помогите пожалуйста.


 
Demiurg ©   (2003-06-27 18:40) [1]

Надо писать парсер для разбора выражений. Но есть и специальные компоненты для этого, поищи...


 
ST ©   (2003-06-27 19:14) [2]

Гемороя много, лучше поищи компонент...


 
reonid ©   (2003-06-27 19:55) [3]

Можно написать маленькую длл-ку след. вида:

library userfunc;
{$E fnc}

uses Math;

function f(X: Double): Double;
begin
Result := ...;
end;

exports
f;

begin
end.

в рантайме её откомпилить и подгрузить.
Компилится со страшной скоростью.
Понадобятся файлы

dcc32.exe
rlink32.dll

math.dcu
sysconst.dcu
sysinit.dcu
system.dcu

Я делал такую фигню (для проверки принципа),
если хочешь - могу прислать.


 
Тих   (2003-06-27 20:34) [4]

Script Control от Microsoft. Вся мощь VB и JScript %-) к вашим услугам. Если серьезно - очень удобно.


 
Burmistroff   (2003-06-27 22:44) [5]

на Delphi Companion Tools CD (что поставляется вместе с Delphi) есть компоненты/объекты/вообщем че-то, что делает это. Причем быстро. Защет того, что формула - компилируется в рантайме, бех к-либо доп. модулей/библиотек, а затем, когда надо посчитать значений ф-ции при другом параметре, парсинг не производится, а выполняется именно тот скомпилированный код, как если бы ты изначально написал эту процедуру на Delphi. Так вот :)


 
Dimaxx   (2003-06-27 23:01) [6]

Есть у меня где-то парсер формул. Надо поискать в своей барахолке. Черкни на мыло, я вышлю. Правда там несколько ограничений, но все-таки.



Страницы: 1 вся ветка

Текущий архив: 2003.07.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
1-31276
alxx
2003-06-26 13:37
2003.07.10
Фокус.


3-31110
Vovik
2003-06-17 15:10
2003.07.10
Как узнать текушее Field.Name в DBGrid


3-31079
Карелин Артем
2003-06-16 11:30
2003.07.10
Замедление работы компа после вставки большого числа записей.


1-31316
NikB
2003-06-26 01:54
2003.07.10
Помогите пожалуста сделать Print Preview в TChart!


1-31186
Adil Aliev
2003-06-28 00:57
2003.07.10
MDIChild