Zum Inhalt springen

Nibbles


Gringorius

Empfohlene Beiträge

Hallo

Ich versuche Nibbles a.k.a. Snake in c++ programmieren. Da ich neu bei dem Thema bin bräucht ich da noch Hilfe:

Und zwar eine elegante Lösung zu finden für den Schwanz des Wurms.

Sollte ich einfach ein Array nehmen, das die Koordinaten jedes Teiles des Wurms enthält?

Dann müsste ich jede Runde neu sortieren um den letzten Teil des Arrays , also das Schwanzende, löschen zu können (wenn sich der Wurm bewegt)

Kann mir da einer weiterhelfen? Ratschläge, Vorschläge, ...

Danke!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Gringorius

Dann müsste ich jede Runde neu sortieren um den letzten Teil des Arrays , also das Schwanzende, löschen zu können

Nö, nicht sortieren, sondern einfach die Werte um eins nach hinten in dem Array verschieben und das erste Element neu besetzen. Der letzte Wert fällt dann weg. Wenn die Schlange länger wird, setzt du die Länge des Arrays (muss ja nicht dynamisch sein für den Anfang) höher.

Link zu diesem Kommentar
Auf anderen Seiten teilen

haha! da lach ich über mich das ich nicht selbst drauf gekommen bin.. einfach alles einzeln verschieben... au weia!! :-)

DANKE!!!

Was ist STL und std::queue? Kannst du das kurz erklären? Wenns nicht zu lange dauert ;-)

Wie gesagt, ich programmiere noch nicht lange und bringe es mir genaugenommen auch nur selbst bei (bzw. versuche es) von daher darf ich alles benutzen aber kann es nicht :-(

Link zu diesem Kommentar
Auf anderen Seiten teilen

Es reicht doch auf zwei Zeiger durchs Array wandern zu lassen, wodurch Schwanz und Kopf festgelegt werden. So ist die Schlangenlänge nur durch die Arraygröße begrenzt und man muß nur die Zeiger hochzählen und bei Überlauf zurücksetzen. Es braucht auch nur ein Eintrag im Array neu gesetzt werden (die neue Kopfposition). Das ist auch ungefähr das Prinzip einer Queue und eine gute Übung für Zeiger. Wieso Du dort rumsortieren wolltest kapier ich allerdings nicht ganz.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Gringorius

Was ist STL und std::queue? Kannst du das kurz erklären? Wenns nicht zu lange dauert ;-)

Die STL ist die Standard Template Library. Sie enthält eine ganze Menge an Container-Klassen die einem schon so manches Problem nehmen. Ich hab hier mal nen link dazu

STL-Beschreibung

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...