Ein Algorithmus beschreibt geordnete, präzise Handlungsschritte zur Lösung einer Aufgabe. Die ausführende Person oder Maschine muss wissen, was jeder Schritt bedeutet und wann sie anfangen darf.
Ein Programm ist ein Algorithmus, der in einer Programmiersprache aufgeschrieben wurde. Unser Interpreter liest diese Sprache und führt ihre Befehle aus. Digitale Systeme wie Suchmaschinen oder Navigationsdienste nutzen viele solche Abläufe.
Ein Beispiel
„nimm“ heißt hier: Nimm genau eine Karte aus dem Vorrat auf den freien Platz. „Mach die Karten schön“ legt keine eindeutige Handlung fest.
Wichtig zu unterscheiden: Eine Maschine errät keine Absicht. Unser einfaches Modell erklärt keine vollständige Suchmaschine und ihre Auswahlregeln.
Was verändert ein Befehl?
Der Zustand beschreibt, was gerade da ist: Wie viele Karten sind im Vorrat, was liegt auf dem Platz, was liegt in der Ausgabe? Eine Anweisung verändert diesen Zustand nach einer festen Regel.
nimm braucht einen freien Platz und einen nicht leeren Vorrat. markiere braucht eine unmarkierte Karte auf dem Platz. lege legt die Karte hinten an die Ausgabe; auch eine unmarkierte Karte darf abgelegt werden.
Ein Beispiel
Vor nimm: Vorrat 3, Platz leer, Ausgabe leer. Danach: Vorrat 2, eine unmarkierte Karte auf dem Platz, Ausgabe leer.
Wichtig zu unterscheiden: Ein Stopp ist keine erfolgreiche Ausführung. Bei einem unerlaubten Befehl bleibt der vorherige Zustand stehen.
Wie lese ich eine Ablaufgrafik?
Folge den Pfeilen vom Start zum Ende. Die Rechtecke nennen Handlungen. Der Wiederholungsrahmen sagt hier: Führe die ganze Gruppe genau so oft aus wie angegeben.
Unsere Darstellung nutzt einen beschrifteten Rahmen für die feste Wiederholung. Andere Flussdiagramme zeichnen dafür einen Zähler und eine Rückführung. In beiden Fällen müssen Anzahl, Reihenfolge und Ende eindeutig sein.
Grafischer Algorithmus: Pfeile geben die Reihenfolge an, der Rahmen umfasst die gesamte wiederholte Gruppe. IuM-Lernwerk · CC BY-SA 4.0 · eigene UnterrichtsgrafikBild größer ansehen ↗
Ein Beispiel
Im Beispiel liegen nimm, markiere und lege im Rahmen „2 Durchläufe“. Erst nach allen sechs Aktionen geht es zum Ende.
Wichtig zu unterscheiden: Drei gezeichnete Ablageflächen sind ein Modell des Arbeitsplatzes, noch keine Darstellung der zeitlichen Abfolge.
Was wird bei einer Schleife wiederholt?
Eine Schleife mit fester Anzahl wiederholt ihren Körper genau so oft wie angegeben. Der Körper enthält hier alle Befehle zwischen [ und ]. Ein Durchlauf führt den ganzen Körper aus.
wiederhole 3 [ nimm markiere lege ] führt neun Aktionen aus. Die Zahl3 zählt Durchläufe, nicht einzelne Aktionen. Ein Befehl nach ] läuft erst nach allen Durchläufen.
Ein Beispiel
nimm lege wiederhole 2 [ nimm markiere lege ] legt zuerst eine unmarkierte Karte ab und dann zwei markierte. Das sind 2 + 2 × 3 = 8 Aktionen.
Wichtig zu unterscheiden: Unsere Sprache erlaubt eine feste Zahl 1–9 und keine verschachtelten Schleifen. Reale Sprachen können deutlich mehr.
Wie prüfe und verbessere ich meinen Ablauf?
Notiere zuerst die erwartete Wirkung. Führe den Plan schrittweise aus und vergleiche. Die Laufspur hält nach jedem Befehl den Zustand fest.
Suche die erste Abweichung oder den ersten unerlaubten Befehl. Erkläre die Ursache. Ändere gezielt und beginne den Test wieder am gleichen Start. Vergleiche zusätzlich den ganzen Auftrag.
Ein Beispiel
wiederhole 3 [nimm] stoppt beim zweiten nimm: Der einzige Platz ist noch belegt. Eine kleinere Zahl verarbeitet nicht alle drei Karten; nimm, markiere und lege müssen hier zusammen in den Körper.
Wichtig zu unterscheiden: Ein Programm kann ohne Stopp enden und trotzdem den falschen Auftrag lösen. Reihenfolge und Markierungen der Ausgabe zählen mit.
Was bleibt aus diesem Lernbogen?
Code beschreibt genaue Zustandsänderungen; die Ausführung prüft den Plan.
Ein Beispiel
Nach nimm liegt eine Karte auf dem Arbeitsplatz und eine weniger im Vorrat.
Wichtig zu unterscheiden: Ein passendes Endbild allein zeigt nicht, ob jeder Befehl ausführbar war.