Crystal Reports 10 .NET  

Ciclos While (sintaxis Crystal)

Un ciclo While se puede usar para ejecutar un bloque de enunciados fijo, una cantidad infinita de veces.

Dos tipos de ciclos While

Tipo de ciclo Explicación Ejemplo
While ... Do El ciclo While ... Do evalúa la condición y si ésta es verdadera, entonces evalúa la expresión que sigue a Do.

Al terminar de hacer esto, vuelve a evaluar la condición y si ésta es verdadera, vuelve a evaluar la expresión que sigue a Do.

Continúa repitiendo este proceso hasta que la condición sea falsa.

While condición Do
   expresión
Do ... While El ciclo Do ... While evalúa la expresión simplemente una vez.

Luego evalúa la condición y si ésta es verdadera, vuelve a evaluar la expresión. Este proceso continúa hasta que la condición sea falsa.

Do
   expresión
While condición
Nota   Los ciclos While admiten un enunciado Exit While para salir inmediatamente del ciclo. Su uso es análogo al uso de Exit For en los ciclo For. Como en el caso del ciclo For, el ciclo While, considerado como expresión, siempre devuelve el valor booleano Verdadero.

While ... While Do...

El siguiente ejemplo busca la primera repetición de un dígito en una cadena de entrada. Si encuentra un dígito, devuelve su posición; de lo contrario, devuelve -1. En este caso, la cadena de entrada se establece explícitamente en una constante de cadena, pero podría establecerse igualmente en un campo de base de datos de tipo de cadena.

Por ejemplo, para la cadena de entrada, "The 7 Dwarves", la fórmula devuelve 5, que es la posición del dígito 7.

Local StringVar cadenaEntrada := "Los 7 Enanitos";
Local NumberVar longitudCadena := Length (cadenaEntrada);
Local NumberVar resultado := -1;
Local NumberVar i := 1;
While i <= longitudCadena And resultado = -1 Do
(
   Local StringVar c := cadenaEntrada [i];
   If NumericText (c) Then
      resultado := i;
   i := i + 1;
);
resultado

Vea también

Evitar ciclos infinitos