CICLOS
1. CONTENIDO
v Definición
Es una sentencia que se realiza repetidas veces
a un trozo aislado de código, hasta que la condición asignada a dicho ciclo
deje de cumplirse.
Generalmente, un ciclo es utilizado para hacer
una acción repetida sin tener que escribir varias veces el mismo código, lo que
ahorra tiempo, procesos y deja el código más claro y facilita su modificación
en el futuro.
v Instrucciones Repetitivas
Ø For (Para)
Es una estructura de control en programación en
la que se puede indicar de antemano el número mínimo de iteraciones que la
instrucción realizará. Está disponible en casi todos los lenguajes de
programación imperativos.
Sintaxis:
Para i ß x hasta n a incrementos de s hacer
Instrucciones
Fin Para
|
Elementos
ü 'Variable de control': Prácticamente
un mandato impuesto por el uso habitual es utilizar la letra i Iterador como
variable de control, o bien sus sucesoras en caso de bucles anidados. El uso de
esta letra críptica quizás a primera vista es sin embargo una excelente forma
de aportar agilidad de lectura al código por su uso tan extensivo.
ü Inicialización de la variable de control: en
pseudolenguaje se pide explicitarlo (es la sección := ValorInicial), sin
embargo, otros lenguajes más permisivos como C no lo requieren de forma
obligatoria. De todos modos, la práctica de utilizar variables de control que
no se inicializan en el bucle no es recomendada para la legibilidad del código.
En C se define en el primer parámetro del bucle junto con la variable de
control.
ü Condición de control: en
pseudolenguaje se ve representado por el valor final que puede tomar la
variable de control (la sección A ValorFinal). En C es el segundo parámetro y
puede ser cualquier condición (ni siquiera es obligación que esté la variable
de control, aunque una vez más, esto no se considera una buena práctica).
ü Incremento: en
pseudolenguaje se toma por defecto el valor 1, aunque puede explicitarse por
medio de la sentencia PASO = ValorPaso cualquier número entero (léase bien
entero, o sea que técnicamente podemos decrementar). En C es el último
parámetro.
ü Cuerpo: es lo que se hará en
cada iteración, pueden ser una o más instrucciones. En pseudolenguaje pesa la
restricción de no poder alterar el valor de la variable de control; esto no es
requerido en C, pero no se considera una buena práctica.
Ø For Each (Por Cada)
Este bucle es una evolución del concepto del
bucle Para en algunos lenguajes. Se utiliza para recorrer estructuras
repetitivas de datos de forma más simple y ágil.
Elementos
ü Elemento: es el
nombre de la variable u objeto que toma el elemento iterado en el cuerpo del
bucle.
ü Tipo de Dato: es el
tipo de variable o la clase a la que pertenece el objeto que se quiere iterar.
ü Conjunto: es la
estructura de datos que se quiere iterar. El uso más típico es con vectores o
-en programación orientada a objetos- clases del tipo Colección.
ü Cuerpo: es lo que se hará en
cada iteración, pueden ser una o más instrucciones. Si bien no se impone una
obligación al respecto, lo más común es que en este Cuerpo exista alguna
operación sobre el elemento iterado.
Ø While (Mientras)
Es una estructura de la mayoría de los
lenguajes de programación estructurados cuyo propósito es repetir un bloque de
código mientras una condición se mantenga verdadera.
La condición ha de ser una sentencia que
devuelva un valor booleano, y esta puede ser el valor booleano sí, verdadero (true)
si la condición se cumple, o falso si esta no se cumple (false). También puede
contener el nombre de una variable booleana, y el valor de la expresión
dependerá de su contenido. Se debe tener en cuenta que además de las variables
también puede haber llamadas a funciones que devuelvan un valor.
En algunos lenguajes, se pueden utilizar
variables no booleanas en la comparación. Por ejemplo, si la variable vale 0
será como si la condición no se cumpliera, y siempre que sea diferente de 0, se
considerará que la condición se cumple.
Sintaxis
Mientras Condición hacer
Instrucciones
Fin
Mientras
|
Ø Do (Hacer Mientras)
También llamado ciclo do-while, es una estructura de control de la mayoría de los
lenguajes de programación estructurados cuyo propósito es ejecutar un bloque de
código y repetir la ejecución mientras se cumpla cierta condición expresada en
la cláusula while. La diferencia con el bucle while radica en que este evalúa
la condición al principio, y si esta no se cumple, el código que está encerrado
dentro del cuerpo no se ejecuta. En cambio, el bucle do-while evalúa la
condición para seguir ejecutándose luego de haber ejecutado el código dentro de
su cuerpo; es decir, siempre se ejecuta por lo menos una vez el código.
Sintaxis:
Hacer
Instrucciones
Mientras(Condición)
|
Ø Repetir
Comprueba la condición de finalización al final
del cuerpo del bucle, y si ésta es cierta continua con el resto del programa, a
veces esto resulta más adecuado.
En algunos lenguajes de programación es
reemplazado por el bucle While.
Sintaxis:
Repetir
Instrucciones
Hasta
Que (Condición)
|
v Ejemplos
Ø For(Para)
Imprimir la tabla de multiplicar del 5
for
(int i =0 ; i <= 10; i++) {
System.out.println(5 + " * " + i +
" = " + 5*i );
}
|
Ø For Each
Recorre en iteración todos los elementos de una
colección list.
Dim lst As New
List(Of String) _
From {"abc", "def",
"ghi"}
For Each item As
String In lst
Debug.Write(item & " ")
Next
Debug.WriteLine("")
|
Ø While(Mientras)
Genera y muestra los primeros diez números
naturales
tarea
{
el objeto número_natural es una cantidad
copie 0 en número_natural
mientras número_natural < 10 haga:
{
copie número_natural + 1 en
número_natural
muestre número_natural
}
}
|
Ø Do
Suma 1 al valor de a (que inicialmente valía 3)
mientras este sea menor o igual que b (que vale 5), lo que da como resultado 6
(nótese que, en la última ejecución del bucle, la variable a comienza valiendo
5, por lo que cumple la condición "mientras", y se le suma 1).
tarea
{
iguale a a 3
iguale b a 5
haga
{
copie a + 1 en a
mientras a <= b
{
muestre a
}
}
|
Ø Repetir
Admite un número del 3 al 7, si no pregunta de
nuevo
REPEAT
WriteString(“Escribe el numero”)
ReadInt(numero);
UNTIL (numero >= 3) AND (numero <= 7)
|
2. RESUMEN
Los
ciclos permiten ejecutar un conjunto de instrucciones varias veces hasta que se
cumpla una condición de que puede estar al inicio o al final del ciclo, si esta
al final hay que tener en cuenta que la ejecución se va a ejecutar al menos una
vez.
3. SUMMARY
The cycles to execute a set of
instructions several times until a condition that may be at the beginning and
end of the cycle is met if the end they have in mind that running is to run at
least once.
4. RECOMENDACIONES
ü Que
las iteraciones establecidas es el factor que determina el fin del bucle.
ü Si se
puede determinar la cantidad de iteraciones se puede aportar claridad y
sencillez en la estructura del programa.
ü Tienen
que realizarse todas las iteraciones
establecidas dentro del ciclo, para salir del bucle.
5. CONCLUSIONES
ü Sirven
para evitar la molestia de andar repitiendo acciones varias veces.
ü Permiten
ejecutar acciones que pueden descomponerse en otras acciones primitivas.
ü Disminución
de tiempo en el desarrollo del programa.
6. APRECIACIÓN DEL EQUIPO
Lo que
hemos podido rescatar de los ciclos en assembler son aquellas que realiza el
programador para compilar varias sentencias un número determinado o,
indeterminado de veces, por ejemplo, escribir algo en pantalla cierta cantidad
de veces, mover un objeto de un punto a otro cierta cantidad de pasos, o hacer
una operación matemática cierta cantidad de veces. Se les llama bucle o ciclo a
todo proceso que se repite cierto número de veces dentro de un pseudocódigo o
un programa y las estructuras repetitivas nos permiten hacerlo de forma
sencilla.
7. GLOSARIO DE TÉRMINOS
v Bucle: En programación, es una
sentencia que se realiza repetidas veces a un trozo aislado de código, hasta
que la condición asignada a dicho bucle deje de cumplirse.
v Generalmente,
un bucle es utilizado para hacer una acción repetida sin tener que escribir
varias veces el mismo código, lo que ahorra tiempo, procesos y deja el código
más claro y facilita su modificación en el futuro
diapositiva:
http://es.slideshare.net/JorgeParedesToledo/ciclos-69225966
diapositiva:
http://es.slideshare.net/JorgeParedesToledo/ciclos-69225966
8. LINKOGRAFÍA
Comentarios
Publicar un comentario