Estructuras repetitivas


Hasta este m0mento, los algoritmos que hemos visto, describen soluciones en las que las acciones solo se deben realizar una vez, pero en el mundo real existen procedimientos en los que una misma secuencia de acciones debe de realizarse un cierto numero de veces de forma repetitiva. Pero como representar esta situación, si la secuencia de acciones solo debe realizarse unas pocas veces, podria bastar con escribirla dos veces:

Algoritmo que calcule el area de 2 cuadrados

  • Inicio
  • obtener lado_cuadrado1
  • area_cuadrado1<-lado_cuadrado1*lado_cuadrado2
  • presentar area_cuadrado1
  • obtener lado_cuadrado2
  • area_cuadrado2<-lado_cuadrado2*lado_cuadrado2
  • presente lado_cuadrado2
  • Fin

Pero no todo es tan facil, imaginese el tamaño del algoritmo si se tratara de repetir esta misma secuencia 50 veces o 100 veces, entonces necesitamos una forma estructurada de expresarlo, ahora bien, alguno estaria pensando en su momento, «con poner se repite 50 veces es suficiente» , bien esto tendria ciertos inconvenientes de lectura, veamoslo con el algoritmo anteior

  • Inicio
  • repetir 2 veces
  • obtener lado
  • area<-lado*lado
  • presentar lado
  • Fin

Parece sencillo, pero recordemos que un algoritmo no debe ser ambiguo, si lo escribimos de esta forma, no se tiene claro a que nos referimos con «repetir 2 veces»

  • ¿Se repite dos veces el inicio?
  • ¿Se repite dos veces obtener lado?
  • ¿Hasta donde termina el repetir dos veces?
  • Si es hasta el final ¿Qué pasa cuando despues de repetir una secuencia debe seguir una secuencia que solo se hace una vez?

Como vemos es muy impreciso, asi que de la programación estructurada obtener que todos los lenguajes soportan 3 estructuras ciclicas o iterativas, estructuras que delimitan y marcan de forma clara los ciclos, estos son:

  • Desde _____hasta _____
  • Repetir___________hasta
  • Mientras___________hacer

¿Qué estas pensando?

Este sitio utiliza Akismet para reducir el spam. Conoce cómo se procesan los datos de tus comentarios.