Algorithmische Grundstrukturen einfach erklärt
Algorithmische Grundstrukturen sind Bausteine, mit denen du einen Ablauf ordnest: Eine Sequenz führt Schritte nacheinander aus, eine Verzweigung wählt nach einer Bedingung einen Weg, und eine Wiederholung führt passende Schritte mehrfach aus. So kannst du eine Aufgabe präzise beschreiben, prüfen und später in verschiedenen Programmiersprachen umsetzen.
Hake ab, was du schon kannst — und komm am Ende hierher zurück!
Von der Aufgabe zur Sequenz
Ein Algorithmus ist eine eindeutige Schrittfolge zur Lösung eines Problems. Er verarbeitet eine Eingabe und liefert eine Ausgabe. Ein Programm setzt einen solchen Lösungsweg in einer Programmiersprache um.
Sequenz
Eine Sequenz ist eine festgelegte Reihenfolge von Anweisungen. Jeder Schritt wird einmal ausgeführt, danach folgt der nächste.
Du möchtest ein Buch ausleihen:
- Wähle ein Buch aus.
- Lege das Buch auf den Ausleihtisch.
- Scanne deinen Ausweis.
- Nimm das verbuchte Buch mit.
Die Reihenfolge gehört zur Lösung. Wenn du das Buch mitnimmst, bevor es verbucht wurde, ist die Aufgabe nicht korrekt abgeschlossen.
Bei einer Sequenz beantwortest du die Frage: Was geschieht als Nächstes?
Mit einer Bedingung den Weg wählen
Manchmal passt nicht für jede Eingabe derselbe nächste Schritt. Dann prüft der Ablauf eine Aussage, die entweder wahr oder falsch ist.
Bedingung
Eine Bedingung ist eine prüfbare Aussage, zum Beispiel „Die Tür ist verschlossen“. Ihr Wahrheitswert bestimmt, welcher Weg ausgeführt wird.
Verzweigung
Eine Verzweigung wählt abhängig von einer Bedingung zwischen verschiedenen Wegen. Bei zwei Ausgängen lautet das Grundmuster: Wenn die Bedingung wahr ist, führe Weg A aus, sonst Weg B.
Ein Garderoben-Ablauf lautet:
- Eingabe: Regnet es?
- Wenn es regnet: Nimm den Regenschirm.
- Sonst: Lass den Regenschirm zu Hause.
- Ausgabe: passende Entscheidung für den Weg nach draußen.
Für die Eingabe „ja“ wird der erste Weg ausgeführt. Für die Eingabe „nein“ wird der Sonst-Weg ausgeführt. Es werden nicht beide Wege nacheinander ausgeführt.
Gleiche Schritte mit einer Wiederholung bündeln
Wenn derselbe Schritt mehrfach gebraucht wird, musst du ihn nicht immer wieder ausschreiben. Du kannst ihn als Wiederholung formulieren.
Wiederholung
Eine Wiederholung, auch Schleife genannt, führt einen Anweisungsblock mehrfach aus. Sie kann eine festgelegte Anzahl von Durchläufen haben oder an eine Bedingung gebunden sein.
Aus der langen Schrittfolge
- Lege einen Aufkleber auf Umschlag A.
- Lege einen Aufkleber auf Umschlag B.
- Lege einen Aufkleber auf Umschlag C.
wird die kürzere Anweisung: Wiederhole für jeden der drei Umschläge: Lege einen Aufkleber darauf.
Die Wiederholung ersetzt drei gleichartige Abschnitte. Der wiederholte Schritt bleibt eindeutig.
Eine bedingungsgesteuerte Wiederholung kann lauten: Solange noch eine Karte auf dem Stapel liegt, nimm die oberste Karte herunter. Nach jedem Durchlauf wird erneut geprüft, ob die Bedingung noch wahr ist.
Eine Schleife braucht eine klare Wiederholungsregel. Bei einer bedingungsgesteuerten Schleife muss sich die Situation so verändern können, dass die Bedingung schließlich falsch wird. Sonst kann eine unbeabsichtigte Endlosschleife entstehen.
Grundstrukturen passend kombinieren
Ein vollständiger Ablauf besteht oft aus mehreren Grundstrukturen. Entscheide für jeden Teil nach seiner Aufgabe:
- Feste Reihenfolge: Sequenz
- Auswahl nach einer prüfbaren Aussage: Verzweigung
- Gleicher Schritt mehrfach: Wiederholung
Grundstrukturen können ineinander liegen. Eine Schleife kann zum Beispiel bei jedem Durchlauf eine Bedingung prüfen.
Ein Sortier-Ablauf für einen Kartenstapel lautet:
- Wiederhole, solange noch Karten im Stapel liegen:
- Nimm die oberste Karte.
- Wenn die Karte rot ist, lege sie in die rote Box.
- Sonst lege sie in die andere Box.
Die äußere Wiederholung verarbeitet alle Karten. Die Verzweigung innerhalb der Wiederholung entscheidet für jede einzelne Karte über die passende Box. „Karte nehmen“ muss vor der Farbprüfung stehen; diese Sequenz ist ebenfalls wichtig.
Deine Aufgabe
Plane einen Ablauf für drei Arbeitsblätter. Jedes Blatt soll gelocht werden. Blätter mit dem Vermerk „abgeben“ kommen danach in das Abgabefach, alle anderen in die eigene Mappe. Benenne die Wiederholung, die Bedingung und beide Ausgänge.
Lösung
- Wiederholung: Für jedes der drei Arbeitsblätter werden die folgenden Schritte ausgeführt.
- Sequenz im Durchlauf: Nimm ein Blatt und loche es.
- Bedingung: Steht auf dem Blatt „abgeben“?
- Wenn-Weg: Lege das Blatt in das Abgabefach.
- Sonst-Weg: Lege das Blatt in die eigene Mappe.
Die Lösung ist vollständig, weil jedes Blatt bearbeitet wird und die Bedingung für beide möglichen Wahrheitswerte einen Weg besitzt.
Programmblöcke in Python erkennen
Die Grundideen sind nicht an eine bestimmte Programmiersprache gebunden. In Python werden zusammengehörige Anweisungen durch Einrückung sichtbar gemacht. Eine Kopfzeile endet mit einem Doppelpunkt; die eingerückten Zeilen darunter bilden den Block.
Betrachte dieses allgemeine Muster:
Anweisung 1Kopfzeile:Anweisung 2Anweisung 3Anweisung 4
Anweisung 2 und Anweisung 3 haben dieselbe Einrückung und gehören zum Block der Kopfzeile. Anweisung 4 steht wieder weiter links und gehört nicht mehr zu diesem Block.
Blöcke können ineinander geschachtelt werden. So kann ein eingerückter Schleifenblock einen noch weiter eingerückten Verzweigungsblock enthalten. Die Einrückung zeigt dann, welche Anweisungen zu welcher Struktur gehören.
Einen Ablauf Schritt für Schritt prüfen
Beim Nachvollziehen eines Algorithmus spielst du seine Anweisungen mit einer konkreten Eingabe der Reihe nach durch. So erkennst du ausgelassene Fälle, eine falsche Reihenfolge oder eine Schleife ohne erreichbares Ende.
Gehe dabei so vor:
- Notiere die Eingabe und den Anfangszustand.
- Markiere die nächste auszuführende Anweisung.
- Prüfe jede Bedingung mit dem aktuellen Zustand.
- Notiere nur den tatsächlich gewählten Weg.
- Prüfe nach einem Schleifendurchlauf die Wiederholungsregel erneut.
- Vergleiche die Ausgabe mit der Aufgabe.
Ablauf: „Wenn die Karte rot ist, lege sie in Box R, sonst in Box A.“
| Eingabe | Bedingung „rot“ | Ausgeführter Weg | Ausgabe |
|---|---|---|---|
| rote Karte | wahr | Wenn-Weg | Box R |
| blaue Karte | falsch | Sonst-Weg | Box A |
Die Tabelle zeigt: Unterschiedliche Eingaben können unterschiedliche Wege auslösen. Entscheidend ist immer der aktuelle Wahrheitswert der Bedingung.
Ein Algorithmus ist die abstrakte Vorgehensweise; ein Programm ist eine konkrete Umsetzung. Deshalb kannst du einen Ablauf zuerst mit Alltagssprache, Listen oder Tabellen prüfen und ihn danach in einer visuellen oder textbasierten Programmiersprache umsetzen.
Karteikasten
Überlege zuerst selbst und drehe die Karte anschließend zum Prüfen um.
Alles auf einen Blick
- Algorithmische Grundstrukturen
- Sequenz: Schritte ordnen
- Verzweigung: Weg nach Bedingung wählen
- Wiederholung: Schritte mehrfach ausführen
- Kombination: Strukturen ineinander einsetzen
- Programmblock: Zusammengehörigkeit durch Einrückung zeigen
- Prüfung: Ablauf mit konkreter Eingabe nachvollziehen
Mit diesen drei Bausteinen kannst du überschaubare Abläufe beschreiben: Sequenzen ordnen, Verzweigungen entscheiden und Wiederholungen bündeln. Beim schrittweisen Prüfen erkennst du, welchen Weg eine Eingabe nimmt und ob der Ablauf sicher endet.
Mit Google fortfahren