![]() |
Brauche dringend Hilfe beim Sortieren
Hallo,
ich bräuchte dringend Hilfe bei einer Aufgabe. Wir sollen Eine Fußballtabelle Sortieren bloss bin ich beim Sortieren auf Probleme gestoßen. Hier mal mein Quelltext:
Delphi-Quellcode:
Ich weiß ist nicht grad sinnvoll aber mir ist nix anderes zur zeit eingefallen.
procedure TForm1.Button1Click(Sender: TObject);
var bs1, bs2, bs3, bs4, bs5, bs6, bs7, bs8, bs9, a, b, c, d, e, f, g, h, i, bt, bat, ct, ht, l1, l2, l3, l4, j, k, l, x, y, z, bayern, Barca, Chel, Hafen, s1, s2, s3, c1, c2, c3, h1, h2, h3 : integer ; begin a := StrToInt(edit1.Text); b := StrToInt(edit2.Text); c := StrToInt(edit3.Text); d := StrToInt(edit4.Text); e := StrToInt(edit5.Text); f := StrToInt(edit6.Text); g := StrToInt(edit7.Text); h := StrToInt(edit8.Text); i := StrToInt(edit9.Text); j := StrToInt(edit10.Text); k := StrToInt(edit11.Text); l := StrToInt(edit12.Text); If a > b then x := 3 else if a = b then x := 1 else x := 0 ; If e > f then y := 3 else if e = f then y := 1 else y := 0 ; If i > j then z := 3 else if i = j then z := 1 else z := 0 ; bayern := x + y + z; If b > a then s1 := 3 else if a = b then s1 := 1 else s1 := 0; If h > g then s2 := 3 else if h = g then s2 := 1 else s2 := 0; If k > l then s3 := 3 else if k = l then s3 := 1 else s3 := 0; Barca:= s1+s2+s3; If c > d then c1 := 3 else if c = d then c1 := 1 else c1 := 0; If f > e then c2 := 3 else if e = f then c2 := 1 else c2 := 0; If g > h then c3 := 3 else if g = h then c3 := 1 else c3 := 0; chel := c1+c2+c3; If d > c then h1 := 3 else if d = c then h1 := 1 else h1 := 0; If j > i then h2 := 3 else if j = i then h2 := 1 else h2 := 0; If l > k then h3 := 3 else if k = l then h3 := 1 else h3 := 0; Hafen := h1+h2+h3; bt := a+e+i; bat := b+h+k; ct := c+f+g; ht := e+j+l; bs1 := max(Bayern, barca); ListBox3.items.Add(IntToStr(Bt)); ListBox3.items.Add(IntToStr(Bat)); ListBox3.items.Add(IntToStr(ct)); ListBox3.items.Add(IntToStr(ht)); ListBox2.items.Add(IntToStr(Bayern)); ListBox2.items.Add(IntToStr(Barca)); ListBox2.items.Add(IntToStr(chel)); ListBox2.items.Add(IntToStr(hafen)); Ich wollte fragen wie ich das in einer Listbox absteigend sortieren kann? über sort macht der das nur aufsteigend Danke schonmal im Vorraus für eure Hilfe |
Re: Brauche dringend Hilfe beim Sortieren
Hi,
dafür gibt es verschiedene Sortier-Algorithmen. Schaust Du z.B. ![]() |
Re: Brauche dringend Hilfe beim Sortieren
danke schonmal für den tipp hab mir das mal angeguckt, aber ich steige da nicht so ganz hinter.
Ich denke bubble Sort wär am sinnvolsten, aber es wäre nett wenn du das kurz an einem beispiel erklären könntest |
Re: Brauche dringend Hilfe beim Sortieren
Bubblesort ist auch ausreichend für die paar Zahlen.
Als erstes benötigst Du ein Array, in dem die zu sortierenden Daten sind. Danach rufst Du den ![]() Pseudo-Code:
Delphi-Quellcode:
Array[0] = StrtoInt(Edit1.Text);
Array[n] = StrToInt(Editn.Text); // ... Procedure BubbleSort; var i,j : Integer; Begin For i:= Length(Array) downto 1 Do For j:= 1 To i Do If (Array[j-1] > Array[j]) Then SwapValues( j-1, j ); End; |
Re: Brauche dringend Hilfe beim Sortieren
ok ich hab das halt jetzt mit meinen 12 Editfeldern gemacht dich ich da habe
Delphi-Quellcode:
aber wie füge ich das jetzt in die listbox ein?...Listbox1.items.add(array)???
Array[0] = StrtoInt(Edit1.Text);
Array[1] = StrToInt(Edit2.Text); Array[2] = StrToInt(Edit3.Text); Array[3] = StrToInt(Edit4.Text); Array[4] = StrToInt(Edit5.Text); Array[5] = StrToInt(Edit6.Text); Array[6] = StrToInt(Edit7.Text); Array[7] = StrToInt(Edit8.Text); Array[8] = StrToInt(Edit9.Text); Array[9] = StrToInt(Edit10.Text); Array[10] = StrToInt(Edit11.Text); Array[11] = StrToInt(Edit12.Text); Procedure BubbleSort; var i,j : Integer; Begin For i:= Length(Array) downto 1 Do For j:= 1 To i Do If (Array[j-1] > Array[j]) Then SwapValues( j-1, j ); End; Weil ich hab 3 Listboxen Einmal Die manschaft, einmal die Punkte und einmal die tore damit sich das jeder vllt auch mal vorstellen kann wie das aussieht, hier mal ein bild ![]() |
Re: Brauche dringend Hilfe beim Sortieren
Einfach in einer Schleife jeden einzelnen Arraywert mit
Delphi-Quellcode:
Aber mal ne Frage: Wonach sortierst du eigentlich? Die derzeitige Sortierung erscheint mir etwas sinnlos.
Listbox1.items.add(array[i]);
|
Re: Brauche dringend Hilfe beim Sortieren
Noch viel sinnloser finde ich die Variablennamen und Komponentenbezeichnungen.
Edit1 bis Edit12 sind nicht vernünftig benannt. Listbox2 ebenso. Form1 und Button1 sind auch keine Leistung. Der Knaller ist das hier:
Delphi-Quellcode:
Nur gut, dass ich nicht Dein Lehrer bin. Bei mir wärst Du durchgefallen bei solcher Namensgebung.
var bs1, bs2, bs3, bs4, bs5, bs6, bs7, bs8, bs9, a, b, c, d, e, f, g, h, i, bt, bat, ct, ht, l1, l2, l3, l4, j, k, l, x, y, z, bayern, Barca, Chel, Hafen, s1, s2, s3, c1, c2, c3, h1, h2, h3 : integer ;
"Sechs - Setzen! - Der Nächste." Hat Deine Mutter dich auch mit "Kind1" benannt? Und heisst Deine Schwester "Kind2" oder "Tochter1"? Die Katze heisst "Tier1", der Hamster ist "Tier2" und der Wellensittich ist "Tier5", oder wie? Mann, Mann, Mann. Sowas ist nicht gut für mein altes Herz :-( |
Re: Brauche dringend Hilfe beim Sortieren
Also zunächst einmal muss ich mich rechtfertigen, dass mein Lehrer das genau so macht mit der Variablen bezeichnung und uns auch so beibringt.
Und auf eure Frage wonach Sortiert werden soll: Mein Lehrer fand, da ja EM war sollen wir ein Programm schreiben, dass die Manschaften (Je nachdem ob sie gewonnen 3 pkt, Verloren 0 pkt oder gLeichstand spielen 1 pkt) absteigend ordet, also die Manschaft mit den meisten Punkten oben steht. Haben zwei Manschaften die gleiche Punktzahl, sollen die Tore entscheiden. Hier nochmal das Bild dazu ![]() |
Re: Brauche dringend Hilfe beim Sortieren
Zitat:
Und wenn der Lehrer sich Kreide in die Nase steckt, dann macht ihr das auch, weil's cool aussieht, oder was? Nicht alles, was ein Lehrkörper (Leerkörper) macht, muss gut sein. Man darf auch in der Schule das Gehirn benutzen. :evil: |
Re: Brauche dringend Hilfe beim Sortieren
Zitat:
Also überleg dir doch einfach ein paar etwas sinnvollere Namen ;) |
Re: Brauche dringend Hilfe beim Sortieren
Zitat:
--- Zur Namensgebung sag ich jetzt mal nichts... :roll: |
Re: Brauche dringend Hilfe beim Sortieren
Wieso benutzt du kein Stringgrid oder Listview zur Anzeige der Tabelle?!
Zudem solltest du dir eine eigene Klasse schreiben, in der du dann in den Attributen die Punkte, den Namen und die Tore speichern kannst... dann packst du dir die erzeugten Objekte inne Liste und sortierst nach der Punktzahl/Toten... und das wird dann letztendlich noch angezeigt |
Re: Brauche dringend Hilfe beim Sortieren
Zitat:
|
Re: Brauche dringend Hilfe beim Sortieren
Ja dacht ich mir auch schon, aber son bischen vorgreifen kann ja nicht schaden. Und wie sie ein Buch dazu haben, sollte dies eigntl (k)ein größeres Problem darstellen.
Und so ist es am einfachsten seine Daten zusammen zuhalten..., muss er wissen |
Re: Brauche dringend Hilfe beim Sortieren
Wenn es mit Klassen zu kompliziert für ihn ist, kann er ja erstmal mit einem array of Record arbeiten. Und dann selber sortieren.
Das hat noch den Vorteil, dass er sich bisschen mit Delphi auseinandersetzt und vielleicht daraus lernt. Tutorials: ![]() ![]() Und allgemein solltest du dir mal die ![]() |
Re: Brauche dringend Hilfe beim Sortieren
Zu eigenen Klassen schreiben und etc.
Wir haben weder ein Buch noch sind wir über das Programmieren von einfach Tafelwerken hinaus. In der Klausur letzte Woche sollten wir nur von einer Pyramide den Oberflächeninhalt und das Volumen sowie die Mantelfläche berechnen. So weiß ich auch nicht so wirklich was mit Stringgrid oder Listview anzufangen. Demnach denke ich das unser Lehrer ganz schön komisch im Kopf is, oder es eine einfache Lösung dafür gibt. Da er das ja bis morgen haben/zeniseren will. Und ich weiß, es hört sich jetzt an als wenn andere meine Hausaufgaben machen sollen, aber glaubt mir ich sitzte schon mehr als verzweifelt Stunden daran. Also wenn es nicht zuviel verlangt ist und jemand Lust und Zeit hätte, währe ich ihm sehr verbunden, wenn er mir dieses Programm schreiben könnte, oder zumindest so helfen das ich das schaffe Danke schonmal im Vorraus |
Re: Brauche dringend Hilfe beim Sortieren
// offtopic
scheinbar hat dir ja keiner geholfen^^ zu dem lehrerthema kann ich auch einiges sagen... wenn ich mal unseren lehrer erläutern dürfte.. diese frau hat die meisten delphi befehle auswendig gelernt (damit meine ich wirklich auswendig!!!) das ist so eine die einfach alls strikt nach plan macht den sie zuhause bei sich in ihrem kellerchen geschmiedet hat.. sie hat keine ahnung von informatik und kann komplett keine weiterfürhrenden fragen beantworten.. da sie mathelehrerin ist, ist unser unterricht eigentlich bloß das lösen von mathematischen problemen und oder schreiben von "mathe lernprogrammen" für 5. klässler... zu dem thema mit der komponentenbezeichnung -> wir dürfen (!!!) nur die automatisch generierten bezeichnungen verwenden, damit sie das später besser verstehen kann ( :wall: )... wenn sie ein programm das man in der kursarbeit geschrieben hat nicht versteht (was zufällig bei mir der fall war) dann gibt sie punktabzug auch wenn sie sich dessen benutzung anhand des von mir geschriebenen tutorials oder des quelltextes erklären könnte ... notengebung: um die epochal noten festzumachen sollen wir uns alle in einer reihe aufstellen - die besten nach vorne und die schlechtesten nach hinten (also wie wir uns einschätzen)- und dann vergleicht sie dies mit ihren aufzeichnungen ... achja und ein programm dass man in der kursarbeit schreibt soll allein die geforderten funktionen haben - bedeutet da ich ein komplett funktionierendes programm geschrieben habe welche die funktionen trotzdem beinhaltet gibts punktabzug .... @ topic scheine ja leider zu spät zu kommen .. |
Re: Brauche dringend Hilfe beim Sortieren
wenn ich mich nicht ganz irre, wurde im geholfen :gruebel: !!!
Die frage zu der sortierung wurde mit bubblesort beantwortet und ihm wurde ein beispiel gezeigt!! Auf die frage hin, wie er es in die listbox bekommt, wurde ihm auch geantwortet!!! Das er nun nach den Punkten ordnen und eventuell noch die Tore vergleichen muss, da kann er auch selbst drauf kommen! Ein wenig Eigeninitiative sollte schon vorhanden sein. Das ist echt der Hammer, was man da immer so hört. Die Informatik ist immer mehr im kommen und die Schule können/wollen sich keine kompetenten InfoLehrer leiste, das ist echt traurig. @coder1990 Kann man da nicht irgendwie zum Direktor oder so gehen?! Das ist ja wohl mal keine Art zu benoten, bzw den Schülern den Stoff beizubringen. Die Schule sollte sich mal einen kompetenten Infolehrer zulegen, ihr macht das ja schließlich nicht zum Spass... Allerdings hamm wir auch so einen "Lehrer", der es versteht sich bei komplizierteren Fragen geschickt zurückzuziehen und auf das Internet zu verweisen!! Mittlerweile hat jeder von uns mehr Ahnung/Erfahrung im programmieren, als der Typ!! |
Re: Brauche dringend Hilfe beim Sortieren
naja eher unwahrscheinlich da bei uns eh lehrermangel besteht und die schule zu wenig geld hat (angeblich) und naja informatik gibts bei uns leider ja auch nur in der oberstufe also das wurde noch nicht wirklich richtig in die schule integriert.. vll ändert sich das ja ... ich werde nächstes jahr (nach den sommerferien halt) wahrscheinlich ne informatik AG eröffnen um nicht oberstufen schülern den weg zu informatik zu erleichtern und vll grundlagen zu schaffen die die lehrer nicht so rüberbringen können, da es an unserer schule wirklich sehr einfach ist mit minimalen wissen sehr gute noten zu erlangen
@ topic ne ich hab ja auf seinen letzten post angesprochen: "Und ich weiß, es hört sich jetzt an als wenn andere meine Hausaufgaben machen sollen, aber glaubt mir ich sitzte schon mehr als verzweifelt Stunden daran. Also wenn es nicht zuviel verlangt ist und jemand Lust und Zeit hätte, währe ich ihm sehr verbunden, wenn er mir dieses Programm schreiben könnte, oder zumindest so helfen das ich das schaffe " er scheint das problem nähmlich noch nicht gelöst zu haben also versteh das jetzt nicht falsch aber bei uns sind auch ein paar im kurs die einfach informatik nicht richtig in den kopf kriegen, also dieses problemorientierte arbeiten und systeme entwickeln und ich kann dir sagen denen ergeht es nicht gut, ich rate dir entweder schnell dies in den kopf zu kriegen oder aus dem kurs rauszugehen .. die bei uns kriegen jetzt nähmlich nur noch 5er und 6er naja vll hattest du ja auch nur bei dieser aufgabe probleme, aber ich wollte dich nur mal warnen MfG |
Re: Brauche dringend Hilfe beim Sortieren
Man, eine Deadline von 24 Stunden ist echt hart!
Da die ja denn wohl mittlerweile verstrichen ist, auch von mir ein mehr oder weniger OffTopic-Beitrag. Als ich den Anfang gelesen habe, dachte ich zunächst, da will tatsächlich jemand, dass andere die Aufgaben für ihn machen. Was RavenIV dann geschrieben hat, sprach mir aus der Seele. Aber im weiteren Verlauf gewann ich dann den Eindruck, dass es doch ein wenig komplizierter ist. So kann ich aus eigener Erfahrung alles das bestätigen, was meine Vorredner über die Lehrer und deren gängige Praxis erzählt haben. Heute bin ich Fachinformaitker (Anwendungsentwickler) und kann einiges mit anderen Augen sehen, was die Lehrer damals von sich gegeben haben. Nichtsdestotrotz, was Thebigx offensichtlich fehlt, sind elementare Grundkenntnisse. Ihn mit tausenden Möglichkeiten vollzuknallen wird ihm wohl nichts bringen. Falls es überhaupt noch von Belang ist (Deadline) dann sollte er sich einen Sortierallgorithmus aussuchen und sich damit beschäftigen. Im WWW gibt es gerade zu diesem Thema jede Menge verständlich erklärte Tutorials. Die Bennenung der EditBoxes oder der ListBox kann er dann morgen in Angriff nehmen. Guido. |
Re: Brauche dringend Hilfe beim Sortieren
Ich habe es (fragt mich nicht wie) geschafft meinen Lehrer dazu zu bringen doch nicht zu benoten, das es keiner aus Meinem Kurs hatte.
Und ich kann Guido nur zustimmen, ich glaube auch das mir sehr viele Grundkenntnisse fehlen, wo mein Lehrer es nicht schafft uns die beizubringen. Weil ich meine, ihr habt meinen Quelltext gesehen, und gestern hab ich die Klausur mit 15Pkt wiederbekommen, bester aus der Klasse...da könnt ihr euch vorstellen wie toll unser infounterricht ist :roll: |
Re: Brauche dringend Hilfe beim Sortieren
Also falls auch ein persönliches Interesse besteht Programmieren zu lernen, dann kann ich das
![]() Ich habe mir das Programmieren auch selbst (mehr oder weniger gut) bei gebracht. |
Re: Brauche dringend Hilfe beim Sortieren
Danke für den Tipp.
Bin grad dabei das durchzuarbeiten und schon auf den ersten seiten habe ich mehr erfahren, als im ganzen Kurshalbjahr :-D |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:10 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