Lernpfad:Lerntheke Marsrover/31: Unterschied zwischen den Versionen

Aus Informatik-Box
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Markierungen: Mobile Bearbeitung Mobile Web-Bearbeitung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
{{Karte}}
{{Karte}}


Simulation einer Turing-Maschinen (Busy Beaver?)
Erklärung Turing Maschine / Busy Beaver.
 
Der Rover kann eine Turingsmaschine simulieren, aber natürlich nicht mit unendlich viel Speicherplatz. Das Band kann maximal 15 Zeichen breit sein.
 
Wir legen folgende Bedingungen für die Rover-Turingmaschine fest:
* Der Rover ist der Lese-/Schreibkopf und steht mit Blickrichtung nach oben.
* Der Rover kann sich nur ein Feld nach links oder rechts bewegen.
* Ein leeres Feld stellt eine <code>0</code> dar, ein Feld mit einer Marke eine <code>1</code>.
* Pro Aufruf der <code>act()</code>-Methode kann der Rover das aktuelle Feld auf eine Marke prüfen, die Marke entfernen oder eine setzen und sich ein Feld bewegen. Mehr nicht.
 
{{Aufgabe:Start}}
# Implementiere die Methoden <code>links()</code> und <code>rechts()</code>, die den Rover ein Feld nach links / rechts bewegen. Der Rover schaut zu Beginn und nach Ablauf nach oben. 
{{Aufgabe:End}}
 
{{Inhalt/Lerntheke}}
{{Inhalt/Lerntheke}}

Version vom 1. Oktober 2020, 13:54 Uhr

Fleißige Rover

Erklärung Turing Maschine / Busy Beaver.

Der Rover kann eine Turingsmaschine simulieren, aber natürlich nicht mit unendlich viel Speicherplatz. Das Band kann maximal 15 Zeichen breit sein.

Wir legen folgende Bedingungen für die Rover-Turingmaschine fest:

  • Der Rover ist der Lese-/Schreibkopf und steht mit Blickrichtung nach oben.
  • Der Rover kann sich nur ein Feld nach links oder rechts bewegen.
  • Ein leeres Feld stellt eine 0 dar, ein Feld mit einer Marke eine 1.
  • Pro Aufruf der act()-Methode kann der Rover das aktuelle Feld auf eine Marke prüfen, die Marke entfernen oder eine setzen und sich ein Feld bewegen. Mehr nicht.
Icon Heft.png
Arbeitsauftrag
  1. Implementiere die Methoden links() und rechts(), die den Rover ein Feld nach links / rechts bewegen. Der Rover schaut zu Beginn und nach Ablauf nach oben.