Habe eine kleine TODO.md Hinzugefügt mit meinem Plan für das Einlesen, inklusive Requirements, kann man wahrscheinlich gut für Tests benutzen.

This commit is contained in:
Manuel Glock committed 2026-10-13 11:53:19 +02:00
1 parent 1a321946c0
commit 59f222f3c1
2 files changed
+46

No files matched your search

BIN
View File
Binary file not shown.
+46
View File
@@ -0,0 +1,46 @@
# TO-DO
## Wörterplatzieren
### Step-by-Step
1. Spawning Grid Logik implementieren
1. Grid größe wählen
2. Grid mit "leeren" Werten initialisieren
3. Wörter einlesen und platzieren
1. Wort nach definierten Trennzeichen einlesen
2. Füller wie Leerzeichen und \n entfernen
3. Capitalisation fixen: gleichmäßig groß oder klein schreiben.
4. Spawn Ort finden
1. Randomly Horizontal oder Vertikal wählen
2. möglicher Bereich zum spawnen = Grid Breite bzw Höhe - Len(Wort)
5. Wort platzieren
1. Temp Duplikat des Grid anlegen
2. Ist der Spawn Ort frei ODER mit gleichen Buchstaben besetzt?
3. Buchstabe Platzieren (oder bereits vorhandenen Buchstaben lassen)
4. In Reihenfolge des Wortes vertikal oder horizontal wiederholen.
5. Bei Fehler:
1. 1.3.4. Neuen Spawn Ort finden.
2. Temp Duplikat Grid leeren
3. FehlerCounter++
1. Falls FehlerCounter >= MAX_ERLAUBTE_FEHLER
2. EXIT
6. Wort Fertig geschrieben
1. Game Grid = Temp Duplikat Grid
2. Wort in eine Liste der "platzierten Wörter" legen? Ums später zu checken?
6. Nächstes Wort einlesen
4. DONE
### Requirements
* Eine .txt Datei kann eingelesen werden
* Es wird nach den Trennzeichen: , ; . : - gefiltert um zu trennen
* Es sind nur Buchstaben erlaubt, keine Zahlen, Sonderzeichen, etc.
* Es werden beliebig viele Füller entfernt bis keine mehr enthalten sind.
* Füller sind Leading oder Trailing:
* " " (Leerzeichen)
* /n
* Füller im Wort müssen erkannt werden und Programm beenden.
* Wörter werden gleichmäßig klein ODER großgeschrieben werden und so weiterhin gespeichert werden.
* Wenn ein eingelesenes Wort länger als das Grid in Horizontal oder Vertikal ist, bricht das Programm ab
* Der Spawn Bereich wird durch die Länge des eingelesenen Wortes eingeschränkt, abhängig von Platzierungs Richtung
* Es werden nur
* Nach 20 gescheiterten Platzierungen bricht das Programm ab