如果计算时,加、减、乘、除也是变量,那怎么计算呢?谢谢!(100分)

P

ptfjy

Unregistered / Unconfirmed
GUEST, unregistred user!
如果计算时,加、减、乘、除也是变量,那怎么计算呢?谢谢!
如下:
procedure TForm1.Button2Click(Sender: TObject);
var S1,S2:String;
N:integer;
begin
S1:='+';
S2:='*';
N:= '2' + S1 + '5'+ S2 +'4';
// 就是 2+5*2 ,希望这行能计算出12,就是5*2,再加2;
end;
 
我来了, 你就有答案了
 
uses comobj;
function expression(const srule:string):do
uble;
var
sc : OleVariant;
begin
sc := CreateOleObject('MSScriptControl.ScriptControl.1');
sc.Language :='JavaScript';
result:=sc.Eval(srule);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
S1,S2:String;
N:do
uble;
begin
S1:='+';
S2:='*';
N:= expression('2' + S1 + '5'+ S2 +'4');
// 就是 2+5*4 ,希望这行能计算出22,就是5*4,再加2;
showmessage(floattostr(N));
end;
 
项一下! 这么经典!
 
我是用 fastscript的
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
926
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
顶部