In den meisten Computersprachen steht eine Kontrollstruktur zur Verfügung, mit der man eine Gruppe von Anweisungen (Block) mit einer bestimmten Anzahl von Wiederholungen ausführen kann.
Dabei sind üblicherweise drei Angaben nötig: Eine Anweisung, die vor dem Beginn der Schleife ausgeführt wird (Initialisierung, eine Abbruchbedingung und eine Anweisung, die nach jeder Abarbeitung des Blocks ausgeführt wird.
In den meisten Programmiersprachen dient die For-Schleife in erster Linie dazu, einfache Wiederholungen auszuführen (Ausnahme: C , C++), die folgenden Anforderungen genügen:
- Die Anzahl der Wiederholungen ist beim Eintritt in die Schleife (durch Zahlen und Variablen) eindeutig festgelegt.
- Die Variablen sind numerisch, so dass die Wiederholungen als erweitertes Zählen betrachtet werden können, bei dem dann obige drei Angaben vereinfacht dargestellt werden durch: Eine Anfangszahl, eine Endzahl, und ein Zählabstand Schrittweite, der jeweils dazuaddiert wird (kann auch negativ oder gebrochen sein).
- Es gibt eine sogenannte Schleifenvariable, die in der Initialisierung auf obigen Wert der Anfangszahl gesetzt wird, und dann jeweils verändet wird.
Andere For-Schleifen könnte man auch als entartete For-Schleifen bezeichnen, die sinnvoller in While-Schleifen zu programmieren wären.
Beispiele
Berechnung Fakultät)
In Basic (hier: Visual Basic)
Dim Fakultaet as Long Fakultaet = 1 For Zaehler = 1 to 5 Step 1 Fakultaet = Fakultaet * Zaehler Next Print Fakultaet 'drucke das Resultat
int main() { unsigned int Zaehler; /* In C99 und C++, dürfen innerhalb der For-Schleife Variabelen deklariert werden */ unsigned long Fakultaet = 1; for (Zaehler= 1; Zaehler <= 5; Zaehler++) Fakultaet *= Zaehler; printf("%i", Fakultaet); return 0; }
Fakultaet = 1 for (Zaehler = 1; Zaehler <= 5; Zaehler++) { Fakultaet = Fakultaet * Zaehler } document.write('Fakultaet=' + Zaehler)
In Smalltalk
faktorial _ 1. 1 to: 5 do: [ :i | faktorial _ faktorial * i]. Transcript show: faktorial printString