![]() |
Re: array sortieren
Greif ich dann innerhalb meiner Button1click prozedur durch Bubblesort(B) auf die "extern" festgelegte Prozedur BubbleSort zu?
|
Re: array sortieren
Deine ButtonClick-Methode ruft dann die Bubblesort-Methode auf, so ist es.
|
Re: array sortieren
Zitat:
Befass dich mal mit den Grundlagen! |
Re: array sortieren
Wie kann ich nun die 5 höchsten Zahlen erhalten z.B. in einem editFeld?
|
Re: array sortieren
Wenn Dein Array aufsteigend sortiert ist, sind es ja wohl die letzten 5 Elemente, bei absteigender Sortierung die ersten 5.
|
Re: array sortieren
Zitat:
|
Re: array sortieren
Also ich habe jetzt den Quelltext zussammen, meine Ergebnisse zeigen mir allerdings, dass er scheinbar nicht sortiert!
Ich hänge mal den zugehörigen Quelltext an, vielleicht fällt dem ein oder anderen etwas auf... Es sei auch egal wie die Bezeichnung der Variablen aussieht, Schönheitskorrekturen kommen später!
Delphi-Quellcode:
{usw.}
procedure Button3Click(Sender: TObject); procedure Button1Click(Sender: TObject); Procedure BubbleSort(var B: Array of byte); private { Private-Deklarationen } {Procedure BubbleSort(var B: Array of byte);} public { Public-Deklarationen } end; type punkt1 = array[1..4, 1..6] of byte; type punkt2 = array of byte; var Form5: TForm5; A: punkt1; B: punkt2; aa, ab, ac, ad, ae, af, df: word; ba, bb, bc, bd, be, bf, ef: word; ca, cb, cc, cd, ce, cf, gf: word; ma, wf: word; s1, s2, s3:integer; implementation uses Unit8; {$R *.dfm} Procedure TForm5.BubbleSort(var B: Array of byte); Procedure Swap(var xx,yy:byte); var Swp: byte; begin swp:=xx; xx:=yy; yy:=swp; end; var i,j : byte; Begin For i:= 1 to 24 Do For j:= 1 To 24-1 Do If (B[j] > B[j+1]) Then Swap( B[j], B[j+1] ); End; procedure TForm5.Button1Click(Sender: TObject); begin A[1,1]:= strtoint(edit1.Text); {usw.} {Wahlpflichtfächer} if edit55.Visible then begin B[19]:=B[24];B[13]:=B[23];B[7]:= B[22];B[1]:=B[21]; setlength(B, 20); end; if edit56.Visible then begin B[20]:=B[24];B[14]:=B[23];B[8]:= B[22];B[2]:=B[21]; setlength(B, 20); end; if edit57.Visible = true then begin B[21]:=B[24];B[15]:=B[23];B[9]:= B[22];B[3]:=B[21]; setlength(B, 20); end; if edit58.Visible = true then begin B[22]:=B[24];B[16]:=B[23];B[10]:= B[22];B[4]:=B[21]; setlength(B, 20); end; if edit59.Visible = true then begin B[23]:=B[24];B[17]:=B[23];B[11]:= B[22];B[5]:=B[21]; setlength(B, 20); end; Bubblesort(B); wf:=B[1]+B[2]+B[3]+B[4]+B[5]; form8.Panel6.Caption:=inttostr(wf); {etc} |
Re: array sortieren
Ich verstehe immer noch nicht, was das mit den
Delphi-Quellcode:
soll
if Edit<x>.Visible
|
Re: array sortieren
Ich arbeite bei diesem Problem eben visuell, d.h. wenn eine editbox[vorher sichtbar gemacht wurde] existiert dann soll er diesen Weg einschlagen. Das ist aber auch nicht mein Problem, denn das lässt sich sicherlich noch anders machen, das Sortieren allerdings muss funktionieren!
|
Re: array sortieren
Die Editfelder existieren ja wohl (kann der Anwender ja nicht beeinflussen). Aber was soll der Code bezwecken?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:14 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