Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Delphi - Bubblesort - bin totaler anfänger... (https://www.delphipraxis.net/18759-delphi-bubblesort-bin-totaler-anfaenger.html)

eLverpeilo 24. Mär 2004 12:17


Delphi - Bubblesort - bin totaler anfänger...
 
... und kriege es nicht hin. :-D
Hi Zusammen , wie schon im topic erwähnt habe ich ein Problem mit dem Bubble_Sort:
Delphi-Quellcode:
procedure TForm1.Bubble_Sort(var Z: TZ_Feld);
var i : integer; vertauscht : Boolean;
   procedure Vertauschen(m, n : integer);
   var Hilfszahl, a, b: integer;
   begin
   Hilfszahl:=Zahlenfeld[m];
   Zahlenfeld[m]:=Zahlenfeld[n];
   Zahlenfeld[n]:=Hilfszahl;
   vertauscht:=true;
   end;
begin
 repeat
 vertauscht:=false;
------------------------------------------------------------------------
(( Der obere Teil wurde uns gegeben , es sind halt auch noch Sort und Neu klick , ausgabe und formcreate enthalten aber die brauch ich ja nicht hierrein zu schreiben)))

so ich bin dann so verblieben:

Delphi-Quellcode:
for i:= 1 to 9 do
begin
a:StrtoInt(StringGrid1.cells[i,1]);
b:StrtoInt(StringGrid1.cells[i+1,1]);

if a > b then

StringGrid1.cells[i,1]:=InttoStr(b);
StringGrid1.cells[i+1,1]:=InttoStr(a);
so und nun weiss ich nicht mehr weiter . Ehrlich gesagt habe ich immoment noch nicht den wirklich den plan was ich da mache , also bitte um verständniss ;>

mfg :dancer: eLverpeilo :dancer2:

[edit=FuckRacism]Delphi-Syntax; Mfg, FuckRacism[/edit]

kiar 24. Mär 2004 12:20

Re: Delphi - Bubblesort - bin totaler anfänger...
 
hallo el....,

erstmal herzlich willkommen.

zweitens die suche im forum ist klasse und sollte dir helfen

drittens delphi tags setzen, damit ist der code besser zu lesen

raik

Phoenix 24. Mär 2004 12:22

Re: Delphi - Bubblesort - bin totaler anfänger...
 
Hallo und Herzlich Willkommen in der Delphi Praxis!

Zum Thema: Hier gibts ein Tutorial zu den Algorithmen, das imho recht gut ist.

Du kannst übrigens Deinen Beitrag ändern und [ delphi ] - Tags um den Code legen. Damit ist der lesbarer ;-)

eLverpeilo 24. Mär 2004 12:37

Re: Delphi - Bubblesort - bin totaler anfänger...
 
das tutorial hab ich mir schon angeguckt , kann das aber irgendwie nicht auf meins übertragen ....

KermitFrosch 24. Mär 2004 13:43

Re: Delphi - Bubblesort - bin totaler anfänger...
 
Hier is die Tauschprozedur... hoffe du kannst dich ein wenig an diesem Beispiel orientieren...

Delphi-Quellcode:
  Procedure TForm1.btnbubbleClick(Sender: TObject);  //Tauschprozedur
    Var i, j, s: Integer;

    Begin
      For i := 1 to ende - 1 do
        For j := i + 1 to ende do
          If zahl[i] > zahl[j] Then Begin
            s := zahl[i];
            zahl[i] := zahl[j];
            zahl[j] := s;
          End;
      edtausgabe.Text := '';
      For i := 1 to ende do
        edtausgabe.Text := edtausgabe.Text + IntToStr(zahl[i]) + '    ';
    End;

Markus K. 24. Mär 2004 16:31

Re: Delphi - Bubblesort - bin totaler anfänger...
 
Hallo eLverpeilo,
hier ist mal eine Möglichkeit von mir bezüglich des BubbleSort Algorithmus.
Delphi-Quellcode:
procedure TForm1.BubbleSort;
var Lauf1,Lauf2:Integer;
begin
     for Lauf1:=20 downto 2 do
         for Lauf2:=2 to Lauf1 do
             if (Sort[Lauf2-1] > Sort[Lauf2]) then Tausch(Lauf2-1,Lauf2);

end;
Vielleicht hilft sie dir.

Tschüß Markus

czapie 24. Mär 2004 17:12

Re: Delphi - Bubblesort - bin totaler anfänger...
 
Hallo el... ,

sicher wirst du hier irgendwann eine Quelltextlösung finden, die dich zufrieden stellt, das jedoch wird dem Lernen nicht viel beitragen.
Mein Tip in solchen Fällen ist der so genannte "Schreibtisch-Test", du nimmst dir einen Zettel, schreibst eine Reihe von Zahlen auf und jeweils eine Spalte in eine Tabelle für eine Varible in deinem Programm, dann setzt du Breakpoints und lasst es laufen. Dann schreibst du Durchgang für Durchgang auf was passiert ist. Das ist zwar mit Arbeit verbunden, aber sollte beim Verständnis helfen. Es soll Leute geben, die Sortieralgortihmen erst nach dieser Methode richtig verstanden haben :roll:

Czapie.

KermitFrosch 24. Mär 2004 19:28

Re: Delphi - Bubblesort - bin totaler anfänger...
 
Zu dieser Sache wollte ich nur mal sagen, dass es mir eher hilft, einen fertigen Quellcode zu sehen und auseinander zu nehmen...

eLverpeilo 24. Mär 2004 20:10

Re: Delphi - Bubblesort - bin totaler anfänger...
 
Nabend nochmal ;>
also habe hier mal was gemacht , sind wahrscheinlich viele fehler drin , aber wollte mal von euch wissen was ich daran noch ändern muss:


[procedure TForm1.Bubble_Sort(var Z: TZ_Feld);]
[var i, j, a, s, b: Integer; vertauscht : Boolean;]
[procedure Vertauschen( m, n : integer);]
[var Hilfszahl: integer ;]
[begin]
[Hilfszahl:=Zahlenfeld[m];]
[Zahlenfeld[m]:=Zahlenfeld[n];]
[Zahlenfeld[n]:=Hilfszahl;]
[vertauscht:=true;]
[end;]


[begin]
[repeat]
[vertauscht:=true;]
[for i:= 9 downto 1 do]
[for j:= 1 to i do]
[a:=StrToInt(StringGrid1.Cells[i,1]);]
[b:=StrToInt(StringGrid1.Cells[i+1,1]);]
[if a > b then]
[StringGrid1.Cells[i,1]:=IntToStr(b);]
[StringGrid1.Cells[i+1,1]:=IntToStr(a);]
[until sortiert;]

// hier muss ich irgendwie Stringgrid1 von j = b zuweisen :wiejetzt:
und j+1 = a . :wiejetzt:

vertauscht : = false ;
end;


aber irgendwie krieg ich das alles irgendwie nicht hin :>

mfg :dancer: eLverpeilo :dancer2:


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:27 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz