![]() |
[HILFE] Bubble Sort
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Leute,
Morgen schreiben wir unsere letzte Delphi Klausur. Ein Teil der Arbeit wird der Bubblesort sein. Und um nocheinmal sicher zu gehen, wollte ich einmal fragen, ob ihr einen Fehler findet bzw ob der Code so richtig ist. Ich hab ihn selbst geschrieben!!! Im Anhang findet ihr das Struktogramm! Wäre euch sehr Dankbar!
Delphi-Quellcode:
VAR
wert: ARRAY [0..4] of INTEGER; <~ Globale Variablen ~> PROCEDURE 'Zufallszahlen erstellen'; // 1 Benötigt: Zufallszahlen generieren VAR i : INTEGER; // Schleifenvariable BEGIN Randomize; // Zufallsgenerator einleiten FOR i := 0 TO 4 DO // Schleife von 0 bis 4 (5 Durchläufe) BEGIN wert[i] := Random(100)+1; // Wert bekommt 5 Zufallszahlen bis 100 ListBox1.Items.Add(IntToStr(wert[i])); << Zufallszahlen ausgeben END; END; <~ 5 Zufallszahlen von 0 bis 100 wählen ~> PROCEDURE 'Bubble Sort'; // 2 Benötig: Sortieralgorithmus VAR i , j , help : INTEGER; // 2 Schleifenvariablen und 1 Hilfsvariable BEGIN FOR j := length(wert)-2 DOWNTO 0 DO // Schleife von j-2 bis 0 runterzählen BEGIN FOR i := 0 TO j DO // Schleife von 0 bis j // Hier wird I auf Null (0) gesetzt!!! Wichtig, sonst kann i jeden beliebigen Wert haben. BEGIN IF wert[i] > wert[i+1] THEN // Fallunterscheidung BEGIN help := wert[i]; // Wert wird der Hilfevar zugewiesen wert[i] := wert[i+1]; // Wert immer um 1 hoch wert[i+1] := help; // Hilfsvar auf Wert +1 END; END; END; FOR i := 0 TO 4 DO // Schleife von 0 bis 4 (5 Durchläufe) BEGIN ListBox2.Items.Add(IntToStr(wert[i])); // Ausgabe der einzelnen Werte END; END; <~ Bubble Sort Algorithmus ~> |
Re: [HILFE] Bubble Sort
2 Dinge fallen mir auf:
- Randomize sollte einmalig aufgerufen werden (z.B. OnCreate) - Length bei statischen Arrays? Nimm doch lieber gleich 2, die Zahl weißt Du doch Ansonsten habe ich auf die Schnelle nichts entdecken können. |
Re: [HILFE] Bubble Sort
Zitat:
Delphi-Quellcode:
PROCEDURE 'Zufallszahlen erstellen';
|
Re: [HILFE] Bubble Sort
Zitat:
Zitat:
Das hab ich nur auf die schnelle genommen. Ist ne Zusammenfassung. Das das nicht geht weiß ich ;) Danke fürs nachgucken! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:37 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-2025 by Thomas Breitkreuz