Registriert seit: 1. Jul 2003
347 Beiträge
Delphi 2007 Professional
|
Re: stringgrid addieren
20. Dez 2004, 10:28
hallo...versuche nun schon eine ganze weile herauszufinden warum das gesamt-ergebnis nicht stimmt.
bekomme bei dieser rechnung als ergebnis 83
http://www.hamiltons-versand.de/delphi/fehler_a.jpg
Delphi-Quellcode:
procedure TForm1.Button7Click(Sender: TObject);
var
i, y, x: integer;
sum, m1, m2, gesamtsum: real;
nr, s, sMyExpression: string;
begin
gesamtsum:=0;
for y := 1 to 22 do
begin
sum := 0;
for i := 1 to 12 do
begin
if STringGrid1.Cells[i, y] <> '' then
begin
nr := StringGrid1.Cells[i, y];
x := pos('*', nr);
if x > 0 then
begin
m1 := strtofloat(copy(nr, 1, x - 1));
m2 := strtofloat(copy(nr, x + 1, length(nr) - x));
sum := sum + (m1 * m2);
end
else
begin
x := pos('+', nr);
if x > 0 then
begin
m1 := strtofloat(copy(nr, 1, x - 1));
m2 := strtofloat(copy(nr, x + 1, length(nr) - x));
sum := sum + m1 + m2;
end
else
begin
nr := StringGrid1.Cells[i, y];
nr := nr;
sum := sum + strtofloat(nr);
end;
end;
sMyExpression := FloatToStr(sum);
stringgrid1.Cells[13, y] := sMyExpression;
gesamtsum:= gesamtsum + sum;
end;
end;
end;
stringgrid1.Cells[13, 23] := FloatToStr(gesamtsum);
end;
|
|
Zitat
|