Thema: Delphi Stringgrid sortieren

Einzelnen Beitrag anzeigen

langer hans

Registriert seit: 8. Mär 2007
Ort: Bad Nauheim
32 Beiträge
 
Delphi 6 Personal
 
#7

Re: Stringgrid sortieren

  Alt 15. Jun 2007, 17:51
Zitat von Klaus01:
Delphi-Quellcode:
procedure TForm1.btSortierenClick(Sender: TObject);
var
  i,j,min,hilfsvar:integer;
begin
  for i:=1 to 10 do
    begin
      Stringgrid1.Cells[i-1,2]:=inttostr(kleinstezahl(i,10));
    end;
end;
Wer sagt Dir denn, daß die kleinste Zahl immer in der Position kleiner i liegt,
Liegt sie dahinter wird diese Zahl des öfteren als kleinste Zahl erkannt.
Aber das sagt doch garnicht, dass die Zahl an einer Position kleiner i liegt. Die Grenze wird doch immer um 1 nach oben verschoben, so wie es auch in dem Link steht.
Zitat:
Delphi-Quellcode:
function kleinstezahl(a,b:integer):integer;
var i,vergleich:integer;
begin
  vergleich:=zahlen[a];
  for i:=a to b do
    begin
      if zahlen[i]<vergleich then
         vergleich:=zahlen[i];

    end;
  result:=vergleich;
end;
Wenn Du hier die kleinste Zahl ermittelt hast
mußt Du sie an die a-te Position des Array schieben
und die Zahl von der a-ten Position an die i-te.

Das nennet sich sortieren durch vertauschen.

Ist auch in dem Link erklärt.

Grüße
Klaus
Die Funktion gibt mir doch die kleinste Zahl innerhalb des immer kleiner werdenden unsortierten Bereichs an. Das klappt ja auch bei der ersten zhal ganz gut... Ich will die Zahlen ja anich im Array sortieren.

Es tut mir echt Leid, dass ich es nicht verstehe, aber trotzdem Danke für die Hilfe!!!
  Mit Zitat antworten Zitat