Instrucciones

3. Bucles

3.2. Bucle "do while"

Hago luego evalúo.

Esta sentencia va un paso más allá que el "while". Esta NO existe en Python.

Sintaxis:

do <sentencia> while(<condición>);  //una sentencia
do {  //varias líneas => bloque
sentencia 1..
sentencia 2..
....
}while(<condición>);

La/s sentencia/s es ejecutada repetidamente mientras la condición resulte verdadera.

Si no se especifica condición se asume que es "true", y el bucle se ejecutará indefinidamente.
A diferencia del bucle "while", la evaluación se realiza después de ejecutar la sentencia, de modo que siempre se ejecutará al menos una vez.

Por ejemplo:

do
x = x + 1;
while (x < 100);

ó
do{
x = x + 1;
}while (x < 100);

Se incrementará el valor de x hasta que x valga 100, por que en 100 la evaluación de la expresión del do/while resulta FALSA.

Veamos otro ejemplo:

 Figura 1

Esto visto como un Diagrama de Flujo sería:

 Figura 2

 Se pide al alumno razonar sobre...

  1. Que línea se sacó respecto de while ? Justificar la respuesta.
  2. Que pasa si en la línea 10 de la Figura 1 se escribe:  }while(>0)   
  3. Que pasa si en la línea 10 de la Figura 1 se escribe: }while(1);
  4. Que pasa si en la línea 10 de la Figura 1 se escribe: }while(0);
  5. Que pasa si en la línea 10 de la Figura 1 se escribe: }while(2);