Eine While-Schleife führt ähnlich wie eine Do- oder Repeat-Until-Schleife in befehlsorientierten Programmiersprachen ein Unterdiagramm so lange aus, bis eine bestimmte Bedingung erfüllt ist (vgl. Abbildung).

Eine While-Schleife führt das Unterdiagramm aus, bis am Bedingungsanschluss ein bestimmter boolescher Wert anliegt. Der Bedingungsanschluss einer While-Schleife funktioniert genau wie bei For-Schleifen mit Bedingungsanschluss. Eine While-Schleife hat dagegen keine vorgegebene Anzahl von Iterationen und kann daher beim Ausbleiben der Bedingung unendlich oft durchlaufen.

Der Iterationsanschluss (siehe Abbildung) gibt die Anzahl der abgeschlossenen Schleifendurchläufe aus.

Die Zählung für die While-Schleife beginnt immer bei 0.

Weitergeben von Daten in While-Schleifen

Per Voreinstellung werden Daten beim Durchlauf von While-Schleifen nicht an den nächsten Durchlauf übergeben. Um auf Daten der vorherigen Iteration zuzugreifen und in der nächsten Iteration zu verwenden, müssen Schieberegister hinzugefügt werden. Arbeiten Sie z. B. mit Schieberegistern, wenn das Ergebnis einer mathematischen Operation in einer Iteration als Ausgangswert für eine mathematische Operation in der nächsten Iteration dienen soll.

Wenn Sie ein Array oder eine Gruppe mit dem Eingangstunnel einer While-Schleife verbinden, wird per Standardeinstellung die Auto-Indizierung für den Tunnel deaktiviert. Zum Aktivieren der Auto-Indizierung klicken Sie mit der rechten Maustaste auf den Tunnel am Schleifenrand und wählen Sie Indizierung aktivieren aus. Wenn die automatische Indizierung aktiviert ist, verarbeitet die While-Schleife ein Element im Array oder in der Gruppe pro Schleifeniteration. Wenn die Anzahl der Schleifeniterationen die Größe des Arrays oder der Gruppe überschreitet, verarbeitet die While-Schleife alle Elemente im Array oder in der Gruppe und verwendet den Standardwert des Elementtyps des Arrays oder der Gruppe für spätere Iterationen. Die Auto-Indizierung kann aktiviert oder deaktiviert werden, je nach gewünschter Art der Verarbeitung der Daten.