¿Cómo funciona un bucle While? ¿Cómo lo implementas en tu programa?

El bucle while es una estructura que ejecutará una parte del programa mientras la condición sea verdadera. A diferencia del bucle for, para el bucle while no se especifica cuántas veces se ejecutará; sólo la condición que hará que se detenga.

El bucle while es más como una estructura if que se repite mientras la condición sea verdadera.

Veamos cómo funciona.:

while (condición) {
  // Su código a repetir
}

¡Cuidado con el bucle infinito!

Con un bucle while, es muy fácil hacer un bucle infinito que bloqueará tu programa. Por ejemplo, olvidando incrementar tu variable que es parte de la condición, o incluso una condición que nunca se convierte en verdadera. Por lo tanto, te aconsejamos que te asegures de que tu condición se convierte en falsa en algún momento.

A continuación veremos un ejemplo del bucle while:

void setup(){
Serial.begin(9600); // Inicializar el monitor serie
int count = 0; // Inicializamos la variable qi, que contará el número de pasadas por el bucle.
while (count < 200) { // El bucle se ejecuta mientras la cuenta sea inferior a 200. 
  Serial.println(count); // La variable
  count+=1; // La variable se incrementa en 1 cada vez que pasa por el bucle.
}
}
void loop(){
}

En este programa, el bucle while se detendrá en 199 y no en 200 porque hemos establecido un menos estricto que y no un estricto o igual.

Es posible escribir el bucle antes del while con la función do While.

do..While

La función do while tiene la estructura opuesta a la función while: el bucle se coloca antes del while y la condición se coloca al final del bucle.

do {
  // Su código
} while (condition); // Las condiciones adecuadas para su programa

He aquí un ejemplo de la función do while:

void setup(){
Serial.begin(9600);
int comunt = 0; // La variable de recuento
do {
  delay(50);          // Pausa de 50 milisegundos
  count+=1;  
  Serial.println(count); 
} while (count < 100); // Bucle mientras el recuento sea menor o igual a 0
}
void loop(){
}

La ventaja de tener el bucle antes de la condición es que el bucle se prueba al menos una vez, aunque la condición sea falsa. Es más, incluso con un inferior estricto, la cuenta sigue llegando a 100 porque la condición está al final.