![]() |
*HILFE* Ich brauch eure Hilfe: Sortieralgorithmus->Gnomes
Hallo Leute! :bounce1:
Ich brauche eure Hilfe bei dem Sortieralgorithmus Gnomesort. Ich muss den am Montag in der Schule vortragen. Den Quelltext dafür hab ich auch schon fertig. Theoretisch müsste er funktionieren, aber wie das so ist klappt es in der Praxis net. :wall: Der Algorithmus sortiert zwar aber nicht alles... :gruebel: Naja hier erstmal der Quelltext:
Delphi-Quellcode:
Vielleicht könnt ihr mir ja helfen und wisst wo der Fehler liegt. :coder2: Wär jedenfalls total lieb, wenn mir jemand helfen könnte. Ich sag schon mal Danke im Voraus! :-Dprocedure TForm1.BitBtn2Click(Sender: TObject); var i,hilfe, Anzahl, Tauschung, Vergleiche : integer; begin i:=0; Anzahl:=Listbox1.Items.Count; Vergleiche:=0; Tauschung:=0; while i<Anzahl-1 do Begin Vergleiche:=Vergleiche+1; if i<0 then begin i:=i+1; end; If StrToInt(Listbox1.Items[i]) > StrToInt(Listbox1.Items[i+1]) then Begin hilfe:=StrToInt(Listbox1.Items[i]); Listbox1.Items[i]:=Listbox1.Items[i+1]; Listbox1.Items[i+1]:=IntToStr(hilfe); Tauschung:=Tauschung+1; i:=i+1; End else i:=i-1; End; Label3.Caption:='Die Zahlen wurden '+InttoStr(Vergleiche)+' mal verglichen und '+InttoStr[Tauschung)+' mal getauscht!'; end; |
Re: *HILFE* Ich brauch eure Hilfe: Sortieralgorithmus->Gn
Such mal hier in der DP nach
![]() |
Re: *HILFE* Ich brauch eure Hilfe: Sortieralgorithmus->Gn
hats einen grund, warum
Delphi-Quellcode:
if i<0 then
begin i:=i+1 end;
Delphi-Quellcode:
steht?
statt if i<0 then inc(i)
|
Re: *HILFE* Ich brauch eure Hilfe: Sortieralgorithmus->Gn
Wahrscheinlich weil die Naschkatze noch nicht so lange mit Delphi Programmiert und die Funktion inc() noch nicht kennt. Als ob daran das sortieren scheitern würde... :roll:
|
Re: *HILFE* Ich brauch eure Hilfe: Sortieralgorithmus->Gn
schau du mal, wo du gucken solltest... :)
|
Re: *HILFE* Ich brauch eure Hilfe: Sortieralgorithmus->Gn
Zitat:
![]() |
Re: *HILFE* Ich brauch eure Hilfe: Sortieralgorithmus->Gn
Naja, über die Steigerung der Übersichtlichkeit durch Inc ließe sich streiten ;) .
@naschelnde Katze: Vergleich deine Implementation nochmal mit der Algorithmusbeschreibung ;) . Am Schluss muss es heißen
Delphi-Quellcode:
. = DerZuIgnoriendeEinrückungsaktivierendePunkt
i:=i-1; End else i:=i+1; End; |
Re: *HILFE* Ich brauch eure Hilfe: Sortieralgorithmus->Gn
ich habe nicht gesagt, dass es falsch ist :)
ok dem Lehrer könnts vielleicht merckwürdig erscheinen, wenn plötzlich inc(i) steht |
Re: *HILFE* Ich brauch eure Hilfe: Sortieralgorithmus->Gn
also ich weiß was inc(i) oder auch dec(i) bedeutet... :P nur ich weiß nicht ob mein Lehrer glaubt dass ich es weiß und so ist es ja auch einfacher
|
Re: *HILFE* Ich brauch eure Hilfe: Sortieralgorithmus->Gn
Zitat:
:?: HÄ? :?: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz