EVAP3

bucles 

definición
un bucle es una sentencia que se repite varias veces bajo unas condiciones. Se utiliza para repetir sin tener que repetir el mismo código. Esto permite ahorro de tiempo, menor tamaño de programa, mayor claridad y facilita las modificaciones.

1.-Bucles while
Una estructura while se ejecutar a mientras se cumpla una determinada
condici on de carrera. Es decir, que la condici on especi cada debe ser verdadera
para que el contenido del bucle pueda ejecutarse. Supuesta mente algo en dicho
contenido producir a variaciones en la condición de carrera hasta provocar que
esta sea falsa, lo que producir a la salida del bucle.
Tambi en podr a construirse un while in nito, por ejemplo con condici on de
carrera [ 1 ], que siempre ser a verdadera, y podr amos forzar la salida en
alg un momento con una instrucci on exit o break.



1.1. Construcci on tipica

Una construcci on t pica de while es:
#!/bin/bash
CONTADOR=1
while [ $CONTADOR -lt 10 ]
do
echo "El contador vale ${CONTADOR} y es menor que 10."
let CONTADOR++
1.2. Bucle in finito
En programaci on un bucle in nito se entiende como un error, si hay un bucle
in nito en un programa est e se quedar a colgado en dicho bucle y no continuar a
nunca. 
Por ejemplo:

#!/bin/bash
# La condici on [ 1 ] es siempre verdadera.
while [ 1 ]
do
echo " Hay alguien ah ?"
read ENTRADA
if [ "$ENTRADA" == "si" ]
then
echo "Hola, usuario."
elif [ "$ENTRADA" == "no" ]
then
echo "Pues si no hay nadie me voy."
break
else
echo "No entiendo."
fi
done
echo "Fin de programa."

Este programa estar a todo el rato preguntando al usuario que si hay alguien
ah . S olo se detendr a al contestar "no", respuesta que causar a la salida del bucle
mediante la instrucci on break. Observe que la l nea nal echo "Fin de programa."
ser a ejecutada normalmente, ya que s olo hemos ordenado la salida del bucle. Si
por el contrario hubi esemos utilizado una instrucci on "exit", la salida hubiese
sido total, de todo el programa, y esta ultima l nea nunca llegar a a ejecutarse


2.- Bucles for
Los bucles de tipo for recorren una secuencia de principio a n, si no se sale
con un break, e introducen en una variable el valor de la actual iteraci on.
Son utiles para recorrer secuencias de n umeros, l neas de un chero de texto,
expresiones matem aticas, etc...
La estructura de un bucle for, en pseudoc odigo, ser a:
para VAR de 1 a 20
hacer
decir "Estoy en la iteraci on n umero VAR"
hecho
decir "Programa finalizado."
O en c odigo real de Bash:
#!/bin/bash
for VAR in $(seq 1 20)
do
echo "Estoy en la iteraci on n umero $VAR"
done







 Bucle in finito





EJEMPLO DE BUCLE INFINITO
CALCULAR EL FACTORIAL DE UN NUMERO N


N! = N * (N-1) * (N-2), . . . , 3 * 2 * 1
Inicio
N
leer N
Factorial ß 1
ß I - 1
repetir
Factorial ß Factorial * I
ß I - 1
Hasta_que I = N - 1
Escribir "el factorial del número", N, "es", Factorial
fin



BUCLE FINITO













EJEMPLO DE BUCLE FINITO
CALCULAR LA RESTA 






ALGORITMO


1.       INICIO


2.       DECLARACIN


x, y


3.       ASIGNACION


Leer (x, y, opción)


4.       CALCULO


z= x-y


5.       RESULTADO


Mostrar la resta


6.       FIN


0 comentarios:

Publicar un comentario