Anweisung While...End While

Die Anweisung While...End While wird mit einem booleschen Prüfausdruck ausgeführt. Solange die Auswertung des Prüfausdrucks True lautet, wird die Anweisung wiederholt. Das folgende Beispiel zeigt eine einfache While...End While-Schleife.

Dim counter As Integer = 0
Dim total As Integer = 0
While counter < 10
   total = total + counter
   counter = counter + 1
End While

Eine While...End While-Schleife kann, wie nachfolgend gezeigt, mit einer Exit-Anweisung beendet werden.

In diesem Beispiel wird das Gewicht pro Einheit eines bestimmten Objekts mittels eines Parameters festgelegt. Eine While-Schleife innerhalb der load-Regel fügt das Gewicht zu einer Gesamtlast (von bis zu 10 Einheiten) hinzu. Für die Last gilt als Grenzwert 25. Während weitere Gewichte pro Einheit hinzugefügt werden, wird die Gesamtlast mit dem Grenzwert verglichen und eine Systemmeldung generiert. Wenn die Last den Grenzwert überschreitet wird der Meldung eine Warnung hinzugefügt, und die Schleife kommt zu einem Ende. Die Steuerung wird an die End While-Anweisung übergeben.

Parameter Rule unitWeight As Integer = 5

  
Rule load As Number
   Dim counter As Integer = 1
   Dim limit As Number = 25.0
   Dim strItem As String = " item."
   While counter <= 10
      If counter > 1 Then
         strItem = " items."
      End If
      load = load + unitWeight
      If load > limit Then
         printValue("Warning: Load = " + stringValue(load) + _
            "kg for " + stringValue(counter) + strItem + " " + _
            stringValue(limit) + "kg limit exceeded!")
         Exit While
      Else
         printValue("Load = " + stringValue(load) + _
            "kg for " + stringValue(counter) + strItem)
      End If
      counter = counter + 1
   End While
End Rule
Output:
"Load = 5.000kg for 1 item."
"Load = 10.000kg for 2 items."
"Load = 15.000kg for 3 items."
"Load = 20.000kg for 4 items."
"Load = 25.000kg for 5 items."
"Warning: Load = 30.000kg for 6 items. 25.000kg limit exceeded!"
Anmerkung: Weitere Informationen finden Sie unter Exit-Anweisung.