![]() |
|||
![]() |
|
Ein Sortierprogramm |
Wir könnten an dieser Stelle Programme zur Subtraktion, Multiplikation und Division schreiben. Um aber deutlich zu machen, dass die Turingmaschine mehr kann als "nur rechnen", betrachten wir nun ein Sortierprogramm. Das folgende Programm soll eine Zeichenkette bestehend aus den Buchstaben A und B sortieren. ![]() Zunächst überlegt man sich wieder eine Strategie, um die Zeichenkette zu sortieren. Eine Möglichkeit:
|
||||||||
Strategie |
Bis kein A mehr vorhanden ist:
Bis kein B mehr vorhanden ist:
|
||||||||
|
Diese Strategie ist zwar nicht effizient, aber leicht verständlich und auch ohne Probleme auf mehr als zwei Zeichen zu erweitern. Problem:
Abhilfe:
Unser Programm startet also damit, die Anfang-Markierung zu setzen: ![]() Nun ist die Maschine in Zustand 2 und soll die Ende-Markierung setzen: ![]() Jetzt befindet sich die Maschine in Zustand 3 und soll auf dem ersten Zeichen positioniert werden. Überlege, wie das Programm zu ergänzen ist.
|
||||||||
![]() |
|||||||||
| Seite 7/17 |