Ich habe jetzt versucht, in SL alles auszurechnen...
Sl enthält bspw.
1
+
2
*
3
Ich hab jetzt überlegt, ich wiederhole jetzt etwas, bis SL nur noch eine Zeile hat.
Nur weiß ich nicht, wie ich das anstellen soll... Ich habs mit Repeat Until versucht:
Delphi-Quellcode:
begin
i:=0;
repeat
if SL[i]='*' then
begin
SL[SL.Count-1]:=(FloatToStr(StrToFloat(SL[i-1])*StrToFloat(SL[i+1])));
{Zahl vor und nach dem * werden multipliziert und in die Zeile der ersten Zahl geschrieben???}
SL.Delete(SL.Count);
{Jetzt soll die Zeile des Operators gelöscht werden}
SL.Delete(SL.Count+1);{und die der zweiten Zahl}
i:=i+1;
{Geht zur Position des nächsten Rechenzeichens}
exit;
{Beendet, da wieder nach * gesucht werden soll->Neubeginn ab Repeat}
end;
if SL[i]='/' then
begin
SL[SL.Count-1]:=(FloatToStr(StrToFloat(SL[i-1])/StrToFloat(SL[i+1])));
SL.Delete(SL.Count);
SL.Delete(SL.Count+1);
i:=i+1;
exit;
end;
if SL[i]='+' then
begin
SL[SL.Count-1]:=(FloatToStr(StrToFloat(SL[i-1])+StrToFloat(SL[i+1])));
SL.Delete(SL.Count);
SL.Delete(SL.Count+1);
i:=i+1;
exit;
end;
if SL[i]='-' then
begin
SL[SL.Count-1]:=(FloatToStr(StrToFloat(SL[i-1])-StrToFloat(SL[i+1])));
SL.Delete(SL.Count);
SL.Delete(SL.Count+1);
i:=i+1;
exit;
end;
until SL.Count = 1;
Ich denke mal, das ist ziemlich falsch...
Also den ersten Teil hab ich jetzt verstanden (StringList erstellen), aber jetzt weiß ich nicht weiter
Bitte helft mir nochmal!!!
Liebe Grüße!