🏗️ Bausteine eines Algorithmus
Inhalt
Jeder Algorithmus lässt sich aus drei Bausteinen zusammensetzen: Sequenz, Wiederholung und Verzweigung. Fast jedes Programm, egal wie kompliziert, besteht am Ende nur aus diesen drei Grundstrukturen, mehrfach kombiniert.
1️⃣ Sequenz (Folge)
Der einfachste Baustein: Schritte laufen in fester Reihenfolge nacheinander ab. Beispiel: "Zahnbürste nehmen, Zahnpasta drauf, putzen, ausspülen." Keine Bedingung, keine Wiederholung — einfach Schritt für Schritt.
🔁 Wiederholung
Es gibt drei Arten von Wiederholung:
- Feste Anzahl: läuft genau so oft, wie vorher festgelegt ("wiederhole 5 mal").
- Fortlaufend (Endlos): läuft immer weiter, ohne festes Ende.
- Bedingt: läuft, bis eine bestimmte Bedingung erfüllt ist ("wiederhole bis Mauszeiger berührt wird").
Eine Scratch-Figur soll tanzen, bis du sie anklickst. Welche der drei Wiederholungsarten passt dafür am besten? Begründe.
🔀 Verzweigung
Bei einer Verzweigung entscheidet eine Bedingung, welcher Weg genommen wird:
- Einseitig ("falls-dann"): nur wenn die Bedingung erfüllt ist, passiert etwas. Sonst passiert nichts.
- Mit Alternative ("falls-dann-sonst"): für beide Fälle, Ja und Nein, gibt es eine eigene Anweisung.
Beispiel: Ein Astronaut soll "Endlich!" sagen, wenn er das Raumschiff berührt, und "Alle an Bord!", wenn nicht. Beide Fälle haben eine Reaktion — das ist eine Verzweigung mit Alternative.
Wiederholung und Verzweigung lassen sich kombinieren, z. B. "wiederhole 5 mal: prüfe, ob die Zahl gerade ist, und melde das". Welche zwei Bausteine stecken hier drin?
📊 Struktogramm & Flussdiagramm
Um einen Algorithmus zu planen, bevor man ihn programmiert, gibt es zwei gängige Darstellungsformen:
- Struktogramm: ein Kästchen-Diagramm. Eine Verzweigung wird als Kästchen mit Bedingung oben und zwei Feldern für Ja/Nein darunter gezeichnet.
- Flussdiagramm (PAP): arbeitet mit Symbolen und Pfeilen. Ovale markieren Start und Ende, Rechtecke sind einfache Schritte, eine Raute (Rhombus) steht für eine Entscheidung.
🔍 Beide Darstellungsformen im Vergleich
| Element | Struktogramm | Flussdiagramm |
|---|---|---|
| Start/Ende | Rand des Kästchens | Oval |
| Schritt | Rechteckiges Feld | Rechteck |
| Entscheidung | Dreiecksform oben im Kästchen | Raute (Rhombus) |
Beide zeigen denselben Algorithmus, nur mit unterschiedlicher Optik. Was für dich übersichtlicher ist, darfst du wählen.
🖼️ Derselbe Algorithmus, zweimal gezeichnet
Der Astronaut aus dem Beispiel oben: "Endlich!" bei Berührung, sonst "Alle an Bord!". So sieht das als Flussdiagramm und als Struktogramm aus:
Flussdiagramm
Struktogramm
🃏 Lernkarten
Zum Auswendiglernen: Karte antippen zum Umdrehen.
⭐ Üben
Fragen werden geladen …
🎮 Stundenaufgabe
Wähle eine Vertiefung, danach geht es an die praktische Übung:
YouTube-Video ansehen
Suche nach "Struktogramm Flussdiagramm einfach erklärt"
Eigenes Flussdiagramm zeichnen
Für einen Alltagsablauf mit Entscheidung
Mit KI besprechen
Prompt kopieren und in eine KI einfügen
Rolle: Du bist ein geduldiger Lernpartner für Informatik. Aufgabe: Frag mich nacheinander ab, was Sequenz, Wiederholung und Verzweigung sind, und lass mich raten, bevor du die Antwort verrätst. Frag danach auch nach Struktogramm und Flussdiagramm. Kontext: Ich bin in Klasse 8 und lerne gerade die Bausteine von Algorithmen kennen. Stil: Einfache, kurze Sätze, keine Fachwörter ohne Erklärung.
🎯 Praktischer Teil
Zeichnet zu zweit ein Flussdiagramm für eine Alltagssituation mit Entscheidung:
- Wählt eine Situation mit einer klaren Ja/Nein-Frage (z. B. "Regnet es? Dann Regenschirm mitnehmen, sonst nicht").
- Zeichnet Start (Oval), die Entscheidung (Raute), beide Wege (Rechtecke) und Ende (Oval) auf Papier.
- Baut zusätzlich eine Wiederholung ein, z. B. "Wiederhole das jeden Morgen".
- Tauscht euer Diagramm mit einem anderen Team und lest es laut vor, als würdet ihr den Algorithmus ausführen.
🐱 Verzweigung in Scratch bauen
Baut euer Flussdiagramm aus Aufgabe 1 in Scratch nach:
- Baut die Entscheidung (Raute) mit einem "falls ... dann ... sonst"-Block nach.
- Baut die Wiederholung mit einem "wiederhole"-Block nach.
- Testet euer Programm mit beiden möglichen Antworten auf die Ja/Nein-Frage. Passiert in beiden Fällen das Richtige?
- Zeigt einem anderen Team, welcher Block bei euch der Verzweigung entspricht und welcher der Wiederholung.
🤖 Vibe-Coding: eine eigene Verzweigung erklären lassen
Rolle: Du bist ein geduldiger Programmier-Lernpartner für Klasse 8. Aufgabe: Schlage mir eine kleine Scratch-Idee vor, die eine Verzweigung UND eine Wiederholung gleichzeitig braucht, z. B. eine Figur, die sich zehnmal bewegt und bei jedem Schritt prüft, ob sie den Bildschirmrand erreicht hat. Kontext: Ich kenne Flussdiagramm-Bausteine (Start/Ende, Verarbeitung, Entscheidung, Wiederholung) und kann in Scratch bereits einfache Verzweigungen bauen. Stil: Schritt für Schritt, ein Vorschlag nach dem anderen, warte auf meine Rückmeldung.
- Lasst euch von der KI eine Idee vorschlagen und baut sie in Scratch um.
- Markiert in eurem fertigen Programm, welche Blöcke zu welchem Baustein (Verarbeitung, Entscheidung, Wiederholung) gehören.
Zeichnet dasselbe Flussdiagramm zusätzlich als Struktogramm und vergleicht: Welche Darstellung findet ihr übersichtlicher, und warum?
Wer mag, kann sein Flussdiagramm sauber abzeichnen (auf Papier oder digital) und der Lehrkraft zeigen.