domingo, 6 de diciembre de 2009

Ejercicios Resueltos y Propuestos Ciclo For

La guía con ejercicios resueltos y propuestos, sobre Ciclo For, se obtiene mediante el siguiente enlace:

Actividad Virtual Nº 3

Estructuras repetitivas e iterativas

Son herramientas que permiten ejecutar operaciones que se deben aplicar un número repetido de veces. El conjunto de instrucciones que se ejecuta repetidamente, se llama Ciclo, Bucle o Lazo.
Iteración es cada una de las diferentes pasadas o ejecuciones de todas las instrucciones contenidas en el bucle.
Fases de un Programa Cíclico:
1. Entrada de datos e instrucciones previas
2. Lazo o bucle
3. Instrucciones finales o resto del proceso
4. Salida de resultado

Ejemplo de bucle infinito:
En el flujograma anterior, observe que la flecha que se regresa hacia arriba nos está indicando que hay que volver a evaluar la expresión. En ese caso como el bucle es infinito, no se tiene una condición para terminar y se estará haciendo siempre.

Ejemplo de bucle finito:

En el ejemplo anterior, ya se agregó una condición, la cual permitirá finalizar la ejecución del bucle en el caso de que la condición se cumpla.
Bucles Repetitivos:
A continuación, se muestran tres diseños de estructuras cíclicas: independientes, anidados y cruzados.

En los
independientes, los bucles se realizan uno a la vez. Uno completo hasta que se cumple la condición y sólo en ese caso se entra al bucle siguiente.

En los ciclos
anidados, al entrar a una estructura de repetición, dentro de ella se encuentra otra. La más interna se termina de realizar y se continúa con la externa hasta que la condición se cumple.

En los bucles
cruzados, los cuales no son convenientes de utilizar, se tiene que iniciamos un bucle y no se ha terminado cuando empezamos otro, luego se aplican saltos para pasar al bucle externo y se quedan entrelazados.
Esto puede ocasionar que el programa pierda el control de cuál proceso se está ejecutando y se obtengan resultados erróneos. El diseño gráfico de estas tres formas cíclicas, sería:

Estructura HACER-PARA (FOR)
Repite la ejecución de una o varias sentencias un número fijo de veces, previamente establecido. Necesita una variable de control del bucle que en Pascal, es obligatoriamente de tipo ordinal (entero), ya que el bucle se ejecuta mientras la variable de control toma una serie consecutiva de valores de tipo ordinal, comprendidos entre dos valores extremos (inferior y superior).
Requiere el uso de begin y end para encerrar el grupo de instrucciones a repetir, siempre que éstas sean dos o más.

Formato ascendente:
FOR variablecontrol:=valorinicial TO valorfinal DO
(sentencia);

Formato
descendente:
FOR variablecontrol:=valorincial DOWNTO valorfinal DO
(sentencia);
donde (sentencia) puede ser una sentencia simple o compuesta.

Ejemplo: (Programa para escribir una cantidad de números enteros)

Program escribeenteros;
Var
N,contador: integer;
Begin
Write ('Introduzca numero maximo de enteros: ');
Readln (N);
For contador:=1 to n do
Write (contador:5);
Writeln
End.

Características del bucle FOR:
Aunque a primera vista pueda resultar más atractivo FOR, existen limitaciones en su aplicación ya que en el bucle FOR siempre se incrementa o decrementa (de uno en uno) los valores de la variable de control de bucle y no de dos en dos o de tres en tres, o con valores fraccionarios.
El número de iteraciones de un bucle FOR siempre es fijo y se conoce de antemano:
Valor final - Valor inicial +1.


ACTIVIDAD VIRTUAL:
Responda mediante la sección de comentarios, las siguientes preguntas:
1.- ¿Cuál es la utilidad de las estructuras repetitivas en Programación?
2.- Dé un ejemplo, que usted crea requiera de estructuras repetitivas para ser resuelto. (No se está pidiendo el programa que resuelva el problema, sólo mencione la situación y cuál es el punto que se resolvería mediante ciclos).
Dado que se trata de personas muy inteligentes y creativas, no se admiten respuestas o ejemplos repetidos.
Tienen hasta el día jueves 10 para responder a la actividad.