Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.07.10;
Скачать: [xml.tar.bz2];

Вниз

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

 
Тимур   (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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.008 c
6-31384
alt7
2003-05-05 14:38
2003.07.10
TIdTelnet читать из буфера


3-31114
Komar
2003-06-17 17:21
2003.07.10
ADOStoreProc.ExecProc в БД Oracle


7-31528
Kusma
2003-04-21 16:29
2003.07.10
автотарт


14-31449
Minotavr
2003-06-23 20:25
2003.07.10
Прикол


3-31111
Doc
2003-06-17 14:21
2003.07.10
Нет опции в DBGrid.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский