Bucle do
# Bucle do

El bucle do, bucle hacer, hacer-mientras, repetir o también llamado ciclo do-while, es una estructura de control de la mayoría de los lenguajes de programación estructurados cuyo propósito es ejecutar un bloque de código y repetir la ejecución mientras se cumpla cierta condición expresada en la cláusula while. La diferencia con el bucle while radica en que este evalúa la condición al principio, y si esta no se cumple, el código que está encerrado dentro del cuerpo no se ejecuta. En cambio, el bucle do-while evalúa la condición para seguir ejecutándose luego de haber ejecutado el código dentro de su cuerpo; es decir, siempre se ejecuta por lo menos una vez el código.

## Sintaxis

La sintaxis en pseudocódigo es la siguiente:

* ${\color {Sepia}{\mathit {Hacer}}}\;$
* ${\color {BlueViolet}{\mathit {instrucciones}}}\;$
* ${\color {Sepia}{\mathit {Mientras}}}\;{\color {BlueViolet}{\mathit {(condici{\acute {o}}n)}}}\;$

## Condición

Al igual que en el bloque while, la condición de salida ha de ser una sentencia que devuelva un valor booleano, y esta puede ser el valor booleano sí, verdadero (true) si la condición se cumple, o falso si esta no se cumple (false). También puede contener el nombre de una variable booleana, y el valor de la expresión dependerá de su contenido. Se debe tener en cuenta que además de las variables también puede haber llamadas a funciones que devuelvan un valor.

### Sentencias comparativas

La forma más obvia tal vez, y la más usada sin duda, son las sentencias comparativas, que usan los operandos igual, diferente, menor o igual, mayor o igual, menor y mayor. En el caso del lenguaje C, se utilizan los siguientes símbolos para representar las comparaciones anteriores: ==, !=, <=, >=, <, >,

## Ejemplo (usando el lenguaje Léxico)

Suma 1 al valor de a (que inicialmente valía 3) mientras este sea menor o igual que b (que vale 5), lo que da como resultado 6 (nótese que, en la última ejecución del bucle, la variable a comienza valiendo 5, por lo que cumple la condición "mientras", y se le suma 1).

