Juan ya tiene claro cómo realizar la comprobación de los valores de usuario y contraseña introducidos por teclado, pero le surge una duda: ¿Cómo podría controlar el número de veces que el usuario ha introducido mal la contraseña?
Ada le indica que podría utilizar una estructura de repetición que solicitase al usuario la introducción de la contraseña hasta un máximo de tres veces. Aunque comenta que puede haber múltiples soluciones y todas válidas, lo importante es conocer las herramientas que podemos emplear y saber cuándo aplicarlas.
Nuestros programas ya son capaces de controlar su ejecución teniendo en cuenta determinadas condiciones, pero aún hemos de aprender un conjunto de estructuras que nos permita repetir una secuencia de instrucciones determinada. La función de estas estructuras es repetir la ejecución de una serie de instrucciones teniendo en cuenta una condición.
A este tipo de estructuras se las denomina estructuras de repetición, estructuras repetitivas, bucles o estructuras iterativas. En Java existen cuatro clases de bucles:
Buclefor(repite para)
Bucle for/in(repite para cada)
Bucle While(repite mientras)
Bucle Do While(repite hasta)
Los bucles for y for/in se consideran bucles controlados por contador. Por el contrario, los bucles while y do...while se consideran bucles controlados por sucesos.
La utilización de unos bucles u otros para solucionar un problema dependerá en gran medida de las siguientes preguntas:
¿Sabemos a priori cuántas veces necesitamos repetir un conjunto de instrucciones?
¿Sabemos si hemos de repetir un conjunto de instrucciones si una condición satisface un conjunto de valores?
¿Sabemos hasta cuándo debemos estar repitiendo un conjunto de instrucciones?
¿Sabemos si hemos de estar repitiendo un conjunto de instrucciones mientras se cumpla una condición?
Expresa una acción que se compone de acciones repetidas.
Recomendación
Estudia cada tipo de estructura repetitiva, conoce su funcionamiento y podrás llegar a la conclusión de que algunos de estos bucles son equivalentes entre sí. Un mismo problema, podrá ser resuelto empleando diferentes tipos de bucles y obtener los mismos resultados.
Como ya se ha recomendado y como habrás podido comprobar, la mejor de aprender es programar los ejemplos en Netbeans, corregir fallos y lanzarlos a ejecución. ¡Mucho ánimo!
Estas y otras preguntas tendrán su respuesta en cuanto
analicemos cada una de estructuras repetitivas en detalle.