Ciclos, lazos o bucles

Solo disponible en BuenasTareas
  • Páginas : 8 (1776 palabras )
  • Descarga(s) : 0
  • Publicado : 6 de octubre de 2010
Leer documento completo
Vista previa del texto
Ciclos, Lazos o Bucles Contenido IV.- Ciclos, Lazos o Bucles 4.1 Estructura mientras 4.2 Bucles infinitos 4.3 Estructura desde/para (for) 4.4 Lazos anidados

Bibliografía

IV.- Ciclos, Lazos o Bucles Las computadoras están especialmente diseñadas para ejecutar tareas repetidamente. Los cálculos simples o la manipulación de pequeños conjuntos de datos se pueden realizar fácilmente a mano, perolas tareas grandes o repetitivas son realizadas con mayor eficiencia por una computadora. Las estructuras de control repetitivas son aquellas en las que una sentencia o grupos de sentencias se repiten muchas veces. Este conjunto de sentencias se denomina bucle o lazo, y puede presentarse de varias formas, una de las formas es el lazo condicionado, en el cual el proceso de repetición se controlamediante una condición previamente establecida. Los pasos especificados en el enunciado de repetición se conocen como ámbito del lazo, (es decir, los pasos comprendidos en éste ámbito deben repetirse en tanto la condición sea verdadera). La condición debe evaluarse antes de cada pasada por el lazo (ciclo), si es verdadera el lazo debe ejecutarse una vez más; si es falsa, se ejecutará en seguida elpaso siguiente al último del intervalo del lazo. Si la condición es falsa en la primera entrada del lazo, deberá saltarse el lazo completo y dejarse sin ejecutar todos sus enunciados. Por ejemplo: Suponga que se desea sumar una lista de números escritos desde el teclado. El medio conocido hasta ahora es leer los número y añadir sus valores a una variable SUMA que contenga las sucesivas sumasparciales. La variable

SUMA se hace igual a cero y a continuación se incrementa el valor del número cada vez que uno de ellos se lea. El algoritmo sería el siguiente: algoritmo suma algoritmo suma inicio star SUMA  0 SUMA  0 leer número read número SUMA  SUMA + número SUMA  SUMA + número leer número read número SUMA  SUMA + número SUMA  SUMA + número leer número read número fin end y asísucesivamente para cada número de la lista. En otras palabras, el algoritmo repite muchas veces las acciones: leer número SUMA  SUMA + número A dichas opciones repetidas se les llama bucles o ciclos, y a la acción (o acciones) que se repite en un bucle se denomina iteración. Lo principal a realizar en el diseño de un bucle es: el contenido de dicho bucle y las veces que debe repetirse. En el ejemploanterior necesitamos saber cuantos números se van a sumar, para ello debemos conocer algún medio para detener el ciclo, daremos a una variable N el número que deseamos. Para contar el número de iteraciones usaremos una variable TOTAL que se inicializa a la cantidad de números que se desea y a continuación se decrementa en uno cada vez que el ciclo se repite (este procedimiento añade una acción masal cuerpo del bucle: TOTAL  TOTAL - 1), o bien inicializar la variable TOTAL en 0 o en 1, e ir incrementando en uno a cada iteración hasta llegar al número deseado: algoritmo suma_número inicio {leer número total en variable N}

TOTAL  N {también podría "leer N"} SUMA  0 {inicio del bucle} hacer lo siguiente mientras que TOTAL sea mayor que cero leer número SUMA  SUMA + número SUMA  TOTAL- 1 {fin del bucle} escribir ‘la suma de los’, N, ‘números es’. SUMA fin Como se ha visto, por medio de un lazo apropiado es posible leer grupos adicionales de datos y leer un algoritmo. El problema de leer datos adicionales no constituye una dificultad ya que se conoce el mecanismo de los lazos. La dificultad se presenta en el momento de la detención. Existen varias formas de detener laejecución de un lazo, una de ellas es agregar un dato que indica el número de veces que debe recorrerse el lazo por completo. Esto se denomina entrada controlada por contador. Para detener la ejecución de los bucles se utiliza una condición de parada. El pseudocódigo de una estructura repetitiva tendrá siempre este formato: inicio {inicialización de variables} repetir acciones S1, S2, ... acciones Sn,...
tracking img