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

Вниз

Вычислить   Найти похожие ветки 

 
Тимофей   (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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.027 c
6-1166595123
Vasya111
2006-12-20 09:12
2007.07.22
Подскажите POST на странице с Javascript


9-1156784627
Начинающий_1
2006-08-28 21:03
2007.07.22
OpenGL. Помогите оптимизировать код.


2-1182949968
Aibo
2007-06-27 17:12
2007.07.22
надо чтобы программа срабатывала бы раз в сутки


2-1182973262
nord489
2007-06-27 23:41
2007.07.22
Работа с 3D объектами


2-1183037115
Nikfel
2007-06-28 17:25
2007.07.22
Как вывести текст по центру на canvas.