var elements: array of string[4]; //Globale Variablen
a,b,count: integer;
input:string;
procedure prepare;
begin
count:=0;
input:=form1.edit1.text;
setlength(elements, 1);
elements[0]:='';
end;
procedure fillarray;
var i:integer;
begin
for i := 1 to length(input) do
if input[i] = ','
then begin
count:=count+1;
setlength(elements, count+1);
elements[count] := '';
end{then}
else elements[count]:=elements[count] + input[i];
end;
function stringinteger(instring: string): boolean;
begin
result:=strtointdef(instring,0)=strtointdef(instring,1);
end;
procedure TForm1.Button3Click(Sender: TObject);
var i,j:integer;
step:boolean;
begin
prepare;
fillarray;
step:=true;
button1.Enabled:=true;
button2.Enabled:=false;
while step do
for i := 0 to count do
if stringinteger(elements[i]) = false
then begin
a:=strtoint(elements[i-2]);
b:=strtoint(elements[i-1]);
case elements[i][1] of '+': a:=a+b;
'-': a:=a-b;
'*': a:=a*b;
'/': a:=a div b;
end;{case}
elements[i-2]:=inttostr(a);
for j := (i-1) to count do
elements[j]:=elements[j+2];
count:=count-2;
step:=true;
break;
end{then}
else
step := false;
label2.caption:=elements[0];
end;