Bucle While

Seguimos con los bucles. Todos los bucles sirven para lo mismo, lo único que cambia es la estructura, y a veces es más recomendable utilizar uno u otro. 

Vamos ahora con un bucle While. En este tipo de bucles, el aumento de la variable (o disminución) se debe realizar dentro del mismo bucle, y la variable no se inicializa en el propio bucle, como ocurría en el "for". 

 

La estructura del bucle While es la siguiente:

while (<condicion/es>) 

{

//Instrucciones a ejecutar en el bucle

}

 

Como se puede apreciar, aquí el bucle se ejecuta si se cumple la condición sin más. 

Vamos a crear el mismo ejemplo que hicimos para el "for", pero ahora utilizando un bucle "While" para que se vea la diferencia. 

Escribimos los números del 1 al 10 por pantalla.

19-1

 

Inicializamos a "i" en 1. La condición sigue siendo la misma: si "i" es menor o igual que 10 entra en el bucle. 

Y fijaos que dentro del propio bucle aumentamos el valor de "i" en 1. Esto es muy importante, ya que si no cambiamos el valor de "i" (el valor que interactúa en la condición) podemos entrar en un bucle infinito, puesto que siempre se cumplirá la condición, porque "i" siempre sería 1. Hay que tener cuidado con eso.

Ahora bien, como ya indicamos en la lección de los operadores lógicos, a la hora de elaborar condiciones se pueden poner más de una, y de dos... todas las que queramos. 

Vamos a hacer este mismo ejercicio pero con 2 condiciones. Crearemos una variable tipo "bool" con el valor de "true" (verdadero). Y en la condición del While, añadiremos que la variable bool sea verdadero, para que entre al bucle. 

De esta forma:

19-2

 

El While ahora tiene que cumplir ambas condiciones para que se ejecute el bucle. El operador utilizado es el "&&", recordad que significa "y"; es decir, si "i" es menor o igual que 10 y "b" es igual a "true", y como "b" siempre va a ser "true" (porque no se modifica en el bucle), pues va a entrar al bucle siempre y cuando "i" sea menor o igual que 10. O sea, que ahora mismo el programa funcionará de la misma forma que anteriormente. Pero es para que se vea que se puede utilizar más de una condición. 

 

¿Qué pasaría si en vez de "&&" ponemos el operador "||"? Este operador significa "o", es decir, que entraría al bucle si se cumple una de las dos condiciones. No nos conviene ponerlo ahora mismo porque "b" siempre es "true"... entonces el bucle se ejecutaría SIEMPRE, por tanto, entramos en bucle infinito. Si quisiéramos poner ese operador en este ejemplo, habría que cambiar la variable "b" en algún momento. 

Descargar While.cpp

Descargar While2.cpp

 

Y aquí el vídeo del funcionamiento de ambos ejemplos:

Bucle While

Daniel Pozo Chichon

Técnico en Desarrollo de Aplicaciones Informáticas (Grado superior)

Contenidos que te pueden interesar
Este sitio usa cookies para personalizar el contenido y los anuncios, ofrecer funciones de redes sociales y analizar el tráfico. Ninguna cookie será instalada a menos que se desplace exprésamente más de 400px. Leer nuestra Política de Privacidad y Política de Cookies. Las acepto | No quiero aprender cursos gratis. Sácame