Select Git revision
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
mars.py 1.61 KiB
from plateau import Plateau
class Mars:
"""
Eine Klasse zur Repräsentation des Mars.
"""
def __init__(self, plateau: Plateau):
"""
Initialisiert den Mars mit einem Plateau.
Args:
plateau: Das Plateau, das den Mars repräsentiert
"""
self.plateau = plateau
def drive(self, cmd: str) -> str:
"""
Führt Fahrbefehle auf dem Mars aus.
Args:
cmd: Die Fahrbefehle als String
Returns:
Ein String mit den erfolgreich ausgeführten Befehlen
"""
# Diese Methode sollte die Fahrbefehle an den Rover weiterleiten
# und die Ergebnisse zurückgeben. Da wir keinen direkten Zugriff auf
# den Rover haben, geben wir hier nur die Befehle zurück.
return cmd
def is_obstacle(self, x: int, y: int) -> bool:
"""
Überprüft, ob an der angegebenen Position ein Hindernis ist.
Args:
x: Die x-Koordinate
y: Die y-Koordinate
Returns:
True, wenn an der Position ein Hindernis ist, sonst False
"""
return self.plateau.is_obstacle(x, y)
def is_within_bounds(self, x: int, y: int) -> bool:
"""
Überprüft, ob die angegebene Position innerhalb der Grenzen des Mars liegt.
Args:
x: Die x-Koordinate
y: Die y-Koordinate
Returns:
True, wenn die Position innerhalb der Grenzen liegt, sonst False
"""
return self.plateau.is_within_bounds(x, y)