Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Highscoreliste mit unbestimmter Anzahl (https://www.delphipraxis.net/158771-highscoreliste-mit-unbestimmter-anzahl.html)

Sertrain 2. Mär 2011 11:55

Highscoreliste mit unbestimmter Anzahl
 
Ich habe folgendes Problem:
Ich habe einen Kopfrechentrainer geschrieben (Schulprojekt) jetzt soll dieser für folgende Klassenstufen genutzt werden. Ich habe eine erreichte Zeit und einen Name + Vorname. Jetzt will ich das ganze abspeichern und in dem Laufenden Programm immer nach einem Durchlauf den Highscore aktualisieren.
Problem ist. Wie entwerfe ich ein Array dessen Anzahl nicht genau bestimmt ist. Meinetwegen spielen an einem Tag 30 Schüler damit und einem anderen Tag 130 ... Wie löse ich mein Problem?

BUG 2. Mär 2011 12:00

AW: Highscoreliste mit unbestimmter Anzahl
 
Hier wäre es interessant zu wissen, welche Delphiversion du nutzt, bzw. ob es dynamische Arrays da schon gibt (afaik ab Delphi 4).
Dann könnte das was für dich sein.

Sertrain 2. Mär 2011 12:02

AW: Highscoreliste mit unbestimmter Anzahl
 
Ich benutze Delphi 7.

Das nächste Problem wäre nämlich, das ich das Array sortieren müsste nach Zeiten und wenn ich die Anzahl dort wieder nicht genau weiß, wird es mit der schleife wieder ein Problem.

pustekuchen 2. Mär 2011 12:06

AW: Highscoreliste mit unbestimmter Anzahl
 
Zitat:

Zitat von Sertrain (Beitrag 1085335)
Ich benutze Delphi 7.

Das nächste Problem wäre nämlich, das ich das Array sortieren müsste nach Zeiten und wenn ich die Anzahl dort wieder nicht genau weiß, wird es mit der schleife wieder ein Problem.

http://www.delphibasics.co.uk/RTL.asp?Name=Length

Sertrain 2. Mär 2011 12:10

AW: Highscoreliste mit unbestimmter Anzahl
 
Damit wäre das Problem gelöst wie ich dann die Länge für die Schleife bestimme. Besteht immer noch das Problem wie ich das mit dem Array mache.

DeddyH 2. Mär 2011 12:15

AW: Highscoreliste mit unbestimmter Anzahl
 
Wie Du was mit dem Array machst?

Bbommel 2. Mär 2011 12:24

AW: Highscoreliste mit unbestimmter Anzahl
 
Zitat:

Zitat von Sertrain (Beitrag 1085340)
Damit wäre das Problem gelöst wie ich dann die Länge für die Schleife bestimme. Besteht immer noch das Problem wie ich das mit dem Array mache.

Was du brauchst, nennt sich "dynamisches Array". Google liefert zum Beispiel das hier als einen ersten Text, mit dem du dich einlesen kannst.

Bis denn
Bommel

DeddyH 2. Mär 2011 12:27

AW: Highscoreliste mit unbestimmter Anzahl
 
Das weiß er ja schon (#2) :zwinker:

Bbommel 2. Mär 2011 12:31

AW: Highscoreliste mit unbestimmter Anzahl
 
Hm, ja, sollte man meinen, aber es wirkte ein bisschen so, als sei das nicht klar geworden, daher wollte ich die Botschaft durch eine Wiederholung verstärken. :)

Sertrain 2. Mär 2011 12:49

AW: Highscoreliste mit unbestimmter Anzahl
 
Mir ist das schon alles klar geworden, nur bringt mir das ganze nichts.

DeddyH 2. Mär 2011 13:39

AW: Highscoreliste mit unbestimmter Anzahl
 
Uns auch nicht, wenn Du uns nicht sagst, wo nun genau Dein Problem liegt.

-187- 2. Mär 2011 14:27

AW: Highscoreliste mit unbestimmter Anzahl
 
Hä? Wieso weisst du die Länge nicht? Du kannst doch nach jedem Durchlauf die aktuelle Score an eine Score Datei/Datenbank anhängen und von dieser dann auch deine Highscore Liste laden/erstellen.
:?:

rollstuhlfahrer 2. Mär 2011 14:36

AW: Highscoreliste mit unbestimmter Anzahl
 
Mal ganz von vorne: Woher beziehst du deine Daten über den Highscore? - Textdatei, DB, XML, HTTP-Abfrage, SOAP?

Ansonsten hat Delphi Listen, die die Eigenschaft Sort haben. Du gibst also alle Einträge in eine Liste von einem Record und lässt dann die Liste sortieren. Dann hast du alle Daten in sortierter Form vorliegen und musst dir keine Gedanken über das zugrunde liegende Array machen.

Bernhard

PS: Perfekt wäre es ja, wenn die Daten aus einer DB kommen, da man der DB sagen kann, dass sie sortieren soll.

Aphton 2. Mär 2011 15:06

AW: Highscoreliste mit unbestimmter Anzahl
 
Zitat:

Zitat von Sertrain (Beitrag 1085355)
Mir ist das schon alles klar geworden, nur bringt mir das ganze nichts.

Was für ein Unfug?

Delphi-Quellcode:
var
  Highscore: Array of <TMeinHighscoreDatenTyp>;

// Länge setzen:
SetLength( Highscore, 5 ); --> [0..4]

// Länge ermitteln:
Length( Highscore ) --> 5 ( [0..4] sind 5 Elemente )
High( Highscore ) --> 4 (4 ist die obere Grenze im Array)

// Sortieren...
Sortieralgorithmus anwenden...
Falls meine Antwort deine Frage klärt, dann Schande über dein Kopf -- denn alles wurde hier schon beantwortet. Du hast dir die Mühe nicht gemacht, die Informationen zu sammeln und zu analysieren!


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:24 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