Форум: "Начинающим";
Текущий архив: 2007.07.22;
Скачать: [xml.tar.bz2];
ВнизВычислить Найти похожие ветки
← →
Тимофей (2007-06-27 22:43) [0]ситуация проста:
Есть поле в стринггриде, которое должно вычисляться.
Пример поля (string):
"Количество * 2"
в итоге я нахожу вовне параметр Количество и заменяю его на цифру и остается напр: "30 * 2", как мне получить (вычислить) результат (в string) этого выражения как можно более простым способом ?
← →
Тимофей (2007-06-27 22:47) [1]Ессесенно, может быть выражение и посложнее, например:
"((Количество * 2) + (Количество2 + 5)) * ПрайсЦена"
← →
homm © (2007-06-27 22:51) [2]Преобразовать в обратную польскую запись, разобрать посимвольно, посчитать.
← →
Тимофей (2007-06-27 22:54) [3]
> разобрать посимвольно, посчитать.
Неужели нет какой нибудь функции в дельфи типа:S1:=Calculate(String);
???
*это я придумал )
← →
TUser © (2007-06-27 22:56) [4]
> Неужели нет какой нибудь функции в дельфи типа:
стандартной нет
← →
Тимофей (2007-06-27 22:59) [5]может у кого есть похожий код разпарсировки и вычисления?
← →
Loginov Dmitry © (2007-06-27 23:08) [6]Используй TScriptControl
← →
Тимофей (2007-06-27 23:19) [7]
> Используй TScriptControl
да, почитал про этот компонент, это хорошая идея. надыбал даже примерчик{$APPTYPE CONSOLE}
uses ActiveX, MSScriptControl_TLB;
var
scr: TScriptControl;
begin
CoInitialize(nil);
scr := TScriptControl.Create(nil);
scr.Language := "VBS"; // Используем VBScript
scr.AddCode("A = 55"); // Код сразу выполняется.
scr.AddCode("B = 11");
scr.AddCode("X = A + B");
scr.AddCode("MsgBox X"); // Окно с результатом
WriteLn(scr.Eval("X")); // Результат вытаскивается в делфи и печатается
scr.Free;
end.
только осталось найти и подключить этот компонент, не подскажешь где и как это сделать ?
← →
Malik © (2007-06-28 00:51) [8]проверь почту!!!
← →
Malik © (2007-06-28 00:54) [9]Там я тебе пример своего калькулятора дал. Если нужно разбирайся...
← →
Сергей М. © (2007-06-28 09:47) [10]
> осталось найти и подключить этот компонент
Project -> Import Type Library .. -> Microsoft Script Control -> Install
← →
Игорь Шевченко © (2007-06-28 11:19) [11]
> может у кого есть похожий код разпарсировки и вычисления?
Этих парсеров и калькуляторов в сети, как звезд на небе.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.07.22;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.044 c