Un bucle es una estructura que nos permite repetir varias veces las instrucciones que alberga en su interior. Su utilidad se entiende mejor con un ejemplo. Supongamos que tenemos que escribir una sucesión de números. Si se trata de una lista breve, podemos hacer el esfuerzo de usar una instrucción Escribir para cada uno de ellos, pero si la lista es muy larga hay que buscar otra solución.
Los bucles tienen una variable de control que nos permite decidir si se ejecutan las instrucciones que contiene o no. Su valor cambia a cada iteración (incremento o decremento), de modo que llega un instante en que dejan de ejecutarse las instrucciones de su interior y se salta a la siguiente instrucción del programa.
Hay tres tipos de bucle: Mientras, Repetir y Para.
El bucle Mientras ejecuta una serie de instrucciones mientras la condición de control del bucle sea verdadera. Si la condición no es verdadera al inicio del bucle, el programa salta a la instrucción posterior al final del bucle.
Proceso Prg_7
// Programa para escribir una lista de números usando un bucle Mientras
i<-0 // Incialización del valor de la variable i
//El bucle Mientras se ejecuta solo si la condición es verdadera al entrar en él
Mientras i<5 Hacer
Escribir i // Muestra el valor de i en pantalla
i<-i+1 // Se modifica el valor de i para que se pueda salir del bucle
Fin Mientras
FinProceso
Ejercicio. Piensa qué números compondrán la lista que aparecerá al ejecutar el programa y anótalo en tu cuaderno. ¿Qué ocurre al ejecutar el programa? ¿Coincide la lista que habías pensado con lo que te muestra el programa?
Ejercicio. Cambia el valor de i en la segunda línea a 10. ¿Qué ocurre al ejecutar el programa?
Ejercicio. Modifica el programa para que imprima correctamente los números de 1 a 5.
El bucle Repetir ejecuta una serie de instrucciones hasta que la
condición de control del bucle sea verdadera. Las instrucciones en el interior del bucle se ejecutan al menos una vez.
Proceso Prg_8
// Programa para escribir una lista de números usando un bucle Repetir Hasta
i<-0 // Incialización del valor de la variable i
// Este bucle se ejecuta al menos una vez, pues la condición se comprueba al final
Repetir
Escribir i // Muestra el valor de i en pantalla
i<-i+1 // Se modifica el valor de i para que se pueda salir del bucle
Hasta Que i=5
FinProceso
Ejercicio.
Modifica el programa para que imprima los números pares comprendidos entre 0 y 10. Ten cuidado con la condición de salida, recuerda que se puede comparar usando los operadores = (igual que), < (menor que), > (mayor que), <= (menor o igual que), >= (mayor o igual que) y <> (distinto).
Ejercicio. Modifica el programa para que muestre los múltiplos de 3 comprendidos entre 0 y 20.
El último tipo de bucle es el Para. Ejecuta una secuencia de instrucciones un número prefijado de veces. Este número viene dado por la variable de control del bucle. Hay que indicar el valor inicial, el valor final y el paso (el incremento de la variable).
Proceso Prg_9
// Programa para escribir una lista de números usando un bucle Para
// Este bucle se ejecuta un número determinado de veces
// La inicialización de la variable, el valor de salida y el paso
// se definen en la primera línea del bucle
Para i<-0 Hasta 10 Con Paso 1 Hacer
Escribir i // Muestra el valor de i en pantalla
// La variable de control se incrementa automáticamente
Fin Para
FinProceso
// Programa para escribir una lista de números usando un bucle Para
// Este bucle se ejecuta un número determinado de veces
// La inicialización de la variable, el valor de salida y el paso
// se definen en la primera línea del bucle
Para i<-0 Hasta 10 Con Paso 1 Hacer
Escribir i // Muestra el valor de i en pantalla
// La variable de control se incrementa automáticamente
Fin Para
FinProceso
Ejercicio. Modifica el programa para que muestre los números pares comprendidos entre 10 y 20. Pista: basta con cambiar el valor del paso.
Ejercicio. Modifica el programa para que muestre los múltiplos de 3 comprendidos entre 0 y 20.
Ejercicio. Modifica el programa para que haga una cuenta atrás desde 10 a 0.
Ejercicio. Piensa un modo de conseguir que los números no aparezcan de golpe en la pantalla, sino con un pequeño retardo entre cada uno. Pista: bucle anidado.
Ejercicio. Piensa un modo de conseguir que los números no aparezcan de golpe en la pantalla, sino con un pequeño retardo entre cada uno. Pista: bucle anidado.