lunes, 20 de abril de 2015

Lógica de Programación (15) - Estructuras repetitivas

Los programas que hemos creado hasta ahora incluyen conceptos de programación esenciales tales como entradas, salidas, asignaciones, expresiones y operaciones, sentencias secuenciales y estructuras de selección.  Sin embargo, muchos de los problemas con los que nos topamos en la práctica del desarrollo de software requieren de características de repetición de instrucciones el las que algunos cálculos o sentencias se repiten una y otra vez, utilizando diferentes conjuntos de datos. Algunos ejemplos de tareas de repetición son las verificaciones de entradas de datos de usuario hasta que se introduce una entrada aceptable (por ejemplo una contraseña válida), acumulación de valores, aceptación constante de valores de entrada, dibujar muchos renglones de una tabla de datos, etc.



Las estructuras que repiten una secuencia de instrucciones un número determinado de veces se llaman ciclos y se le llama iteración al hecho de repetir la ejecución de una secuencia de acciones. Tratemos de entender la necesidad de estas estructuras con un ejemplo. Supongamos que necesitamos leer una lista de 10 números para calcular la suma de todos ellos. El algoritmo que resuelve este problema se vería algo así:

algoritmo Suma
var
   entero: suma, numero
inicio
   suma <- 0
   leer(numero)
   suma <- suma + numero
   leer(numero)
   suma <- suma + numero
   leer(numero)
   suma <- suma + numero
   leer(numero)
   suma <- suma + numero
   leer(numero)
   suma <- suma + numero
   leer(numero)
   suma <- suma + numero
   leer(numero)
   suma <- suma + numero
   leer(numero)
   suma <- suma + numero
   leer(numero)
   suma <- suma + numero
       leer(numero)
   suma <- suma + numero
   escribir(suma)
fin

Como vemos, este algoritmo está repitiendo diez veces las mismas dos instrucciones. Puede que no sea tan complicado crear este algoritmo pero, ¿y si tuviéramos que calcular la suma de 1000 números en vez de sólo 10? Peor aún, ¿qué tal si no conozco la cantidad exacta de números que se van a sumar y en su lugar debo preguntar al usuario si desea introducir un número más y, en caso afirmativo, leerlo y sumarlo? En ese caso la situación se complica todavía más. Les estructuras repetitivas nos ayudarían a resolver cualquiera de los dos problemas planteados y, en programación, contamos con las siguientes:

  • Estructura mientras (while)
  • Estructura hacer-mientras (do-while)
  • Estructura repetir (repeat)
  • Estructura desde/para (for)

Cada una de ellas, aunque en esencia hace lo mismo (repetir instrucciones), tiene sus propias características, ventajas, desventajas y usos, todos los cuales iremos conociendo a partir de la siguiente lección.

¡Hasta la próxima!


Enlace: Índice del curso


0 comentarios:

Publicar un comentario

Copyright © IsraelCapetillo.com - Un blog de tecnología, noticias geek y más Compartido por Gooyaabi Templates | Powered By Blogger

Design by Anders Noren | Blogger Theme by NewBloggerThemes.com