Ein Algorithmus ist die konzeptionelle Lösungen für ein Problem. Zum Leben erweckt wird ein Algorithmus erst in einer Programmiersprache.
Die Umsetzung eines Algorithmus in eine Programmiersprache bezeichnet man als Implementierung.
Ein Programm implementiert also einen Algorithmus. Zusätzlich zu den Grundoperationen (in Snap! einzelne Blöcke) benötigen wir letztlich nur 3 sogenannte Strukturelemente: Sequenzen, Wiederholungen und Fallunterscheidungen.
Sequenz
Eine Folge von Anweisungen wird der Reihe nach ausgeführt.
Wiederholung
Eine Folge von Anweisungen wird wiederholt.
Hier gibt es genau genommen (zwei) unterschiedliche Formen. Einmal eine Wiederholung mit fester Anzahl (im Beispiel 4; das kennen wir bereits) und einmal eine Wiederholung mit Bedingung (wiederhole solange bis du nicht mehr hungrig bist; das kennen wir noch nicht).
Fallunterscheidung
Es werden alternative Abläufe beschrieben. Falls wir hungrig sind, kochen wir etwas.
Um Fallunterscheidungen in unseren Algorithmen auch in Snap! umsetzen zu können, werden wir uns als Nächstes ansehen, was es mit den sechseckigen Blöcken auf sich hat und wie diese Fallunterscheidungen funktionieren!