Wegfindungsalgorithmen
Ziel ist es, dass Sie ihren Wegfindungsalgorithmus in Python übersetzen und auf verschiedenen Labyrinthen testen.
Nützliche Code Schnipsel
Labyrinth laden
Beispiellabyrinthe gibt es hier: labs.zip. Entpacken Sie die Dateien ins gleiche Verzeichnis, wo sich ihre Programme und die Klassen befinden.
Von Datei laden
from laby import Laby from zelle import Zelle l = Laby.load("10x07-06.txt") print(l)
In Datei speichern
# l enthält eine Instanz der Klasse Laby l.save("meineloesung.txt")
Start und Ziel markieren
l[0,0].mark = "S" l[l.breite-1, l.hoehe-1].mark = "Z"
Erreichbare Nachbarszellen
aktuell = l[2,4] # eine Zelle des Labyrinths for dir in range(4): # Alle Richtungen durchgehen if aktuell.offen[dir]: # Wand in die Richtung ist offen nb = aktuell.nachbar(dir) # Nachbarszelle (oder None, wenn es diese nicht gibt) if nb!=None: # Nur wenn es diese Zelle auch gibt (Mauern am Rand könnten auch offen sein) # Tu wat mit nb nb.mark = "X" aktuell = nb break # for-Schleife sofort beenden (evtl. weitere Nachbarn ignorieren)