Guten Abend,
momentan programmieren wir in der Schule einen Bubblesort-Algorithmus, der uns zufällig erzeugte Zahlen sortieren soll.
Ich sitze nun vor folgendem Problem:
Meine Bs-Algorithmus sortiert immer richtig, nur lässt er die höchste Zahl weg und überträgt auch nichts in StrinGrid (in welchem die sortierten Zahlen angezeigt werden sollen).
Wenn nun z.B. zufällige Zahlen von 1-100 gewählt werden, 10 an der Zahl: 87,62,25,12,19,2,45,98,57,98, wird in diesem Szenario die beiden 98 nicht mitsortiert, d.h. sie werden einfach ignoriert.
Hier mein Quellcode
Code:
procedure TBubblesortForm.SortButtonClick(Sender: TObject);
begin
for i:=0 to high(numbers)-1 do
begin
for k:=i+1 to high(numbers) do
begin
if numbers[i]>numbers[k] then
begin
bubble:=numbers[k];
numbers[k]:=numbers[i];
numbers[i]:=bubble;
snumbers[i]:=numbers[i];
BubbleStringGrid2.cells[0,i-1]:=IntToStr(snumbers[i]);
end;
end;
end;
end;
Ich hoffe man kann mir helfen.
MfG