Wenn wir ein Lösungsverfahren schrittweise formulieren, geben wir eine Folge eindeutiger, elementarer Handlungsanweisungen an. Eine solche eindeutige Handlungsvorschrift aus endlich vielen, wohldefinierten Einzelschritten wird als Algorithmus bezeichnet.
Soll zum Beispiel eine Nuss zum Essen vorbereitet werden, kann die entsprechende Handlungsfolge so aussehen:
Dabei gelangen wir oft in die Situation, Anweisungen zu formulieren, die in Wiederholung ausgeführt werden müssen, bis eine bestimmte Bedingung erfüllt ist:
Die Sequenz der vier Anweisungen “nimm”, “knacke”, “lege”, “wirf” wird hier also wiederholt ausgeführt, bis die Bedingung “Tüte ist leer?” erfüllt ist.
Außerdem gibt es Situationen, in denen eine Fallunterscheidung getroffen werden muss, die Ausführung einer oder mehrerer Anweisungen zu einem Zeitpunkt also von einer Bedingung abhängt – Falls A dann mache dies, anderenfalls mache jenes:
Hier wird in jeder Wiederholung nach der Anweisung “knacke” überprüft, ob die Bedingung “Kern ist verdorben?” erfüllt ist und je nach Ergebnis entweder die Anweisung “wirf” oder die Anweisung “lege” ausgeführt.