Ayuda de Div Games Studio/WHILE

De Wikilibros, la colección de libros de texto de contenido libre.

Sintaxis[editar]

WHILE ( <condición> )
    <sentencia> ;
    ...
END

Descripción[editar]

La sentencia WHILE (mientras) es una sentencia que implementa un bucle, es decir, que es capaz de repetir un grupo de sentencias un número determinado de veces.

Para implementar este bucle se debe especificar entre paréntesis la condición que se debe cumplir para que se ejecute el grupo de sentencias a continuación de la palabra reservada WHILE. Tras especificar esta condición, se pondrán todas las sentencias que se necesita que se repitan y, finalmente, se marcará el final del bucle con la palabra reservada END (No importa que dentro del bucle aparezcan más palabras END si éstas forman parte de sentencias interiores a dicho bucle).

Cuando se ejecute una sentencia WHILE se realizará la comprobación que se especifica y, si ésta resulta cierta, se ejecutarán las sentencias interiores; en caso contrario, se continuará el programa a partir del Ayuda de Div Games Studio/END que marca el final del WHILE.

Si se han ejecutado las sentencias interiores (lo que se denomina realizar una iteración del bucle), se volverá a comprobar la condición y, si ésta vuelve a ser cierta, se realizará otra iteración (se volverán a ejecutar las sentencias interiores). Este proceso se repetirá hasta que, al comprobarse la condición del WHILE, ésta resulte falsa.

Si según se ejecuta una sentencia WHILE la condición resulta falsa directamente, entonces no se ejecutarán las sentencias interiores ninguna vez.

Ejemplo[editar]

PROGRAM mi_juego;
BEGIN
    x=0;
    WHILE (x<320)
        x=x+10;
        FRAME;
    END
END

En este ejemplo se pondrá la variable local x (coordenada x del proceso) a cero y después, mientras x sea menor que 320, se le sumarán 10 a x y se dará un FRAME.

Una sentencia BREAK dentro de un bucle WHILE lo finalizará de forma inmediata, continuando el programa por la sentencia siguiente a dicho bucle.

Una sentencia CONTINUE dentro de un bucle WHILE forzará al programa a comprobar la condición inicial inmediatamente y, si ésta es cierta, volver a ejecutar las sentencias interiores desde el principio (tras el WHILE). Si la condición resulta falsa, la sentencia CONTINUE finalizará el bucle.

Las sentencias interiores a un bucle WHILE pueden ser tantas como se quieran y de cualquier tipo, incluyendo, por supuesto, nuevos bucles WHILE.

Ver también =[editar]