Also meine Schuld ist es nicht das kann ich euch garantieren. Ich muss ein Praktikum machen und die Aufgbe wurde mir gestellt, und je schlechter ich das mache desto schlechtere Noten kriege ich. Wir hatten noch nicht mal Delphi als Programmiersprache nur c++ aber sogar da sind wir nicht soweit..
Das doofe ist ja das ich ein Rechenparse schreiben muss und das Programm was ich jetzt habe nicht ganz korekt ist..
ich habe es ein bisschen geändert aber meine berechnungen funktioieren iwi nicht
Delphi-Quellcode:
procedure TFormTR.spResultClick(Sender: TObject);
begin
LabelAnzeige.Caption := FloatToStr(BerechneTerm(LabelAnzeige.Caption));
end;
function TFormTR.BerechneTerm(Formular: string): Double;
var Seg1,Seg2 : double;
index : integer;
Op : string;
begin
for index := 0 to 3 do
begin
case index of
0: Op := '*';
1: Op := '/';
2: Op := '+';
3: Op := '-';
end;
if pos(Op,Formular) > 1 then
begin
Seg1 := BerechneTerm(copy(Formular,1,pos(Op,Formular) - 1));
Seg2 := BerechneTerm(copy(Formular,pos(Op,Formular) + 1,length(Formular)));
case index of
0: Result := Seg1 + Seg2;
1: Result := Seg1 - Seg2;
2: Result := Seg1 * Seg2;
3: Result := Seg1 / Seg2;
end;
end;
end;
//LabelAnzeige.Caption := FloatToStr(Result);
//Result := FloatToStr(BerechneTerm(LabelAnzeige.Caption));
end;