Estructuras de control

Estructuras de control

En lenguajes de programación, las estructuras de control permiten modificar el flujo de ejecución de las instrucciones de un programa.

Con las estructuras de control se puede:

  • De acuerdo a una condición, ejecutar un grupo u otro de sentencias (If-Then-Else y Select-Case)
  • Ejecutar un grupo de sentencias mientras exista una condición (Do-While)
  • Ejecutar un grupo de sentencias hasta que exista una condición (Do-Until)
  • Ejecutar un grupo de sentencias un número determinado de veces (For-Next)
  • Etc

Todas las estructuras de control tienen un único punto de entrada y un único punto de salida. Las estructuras de control se puede clasificar en : secuenciales, iterativas y de control avanzadas. Esto es una de las cosas que permite que la programación se rija por los principios de la programación estructurada.

Los lenguajes de programación modernos tienen estructuras de control similares. Básicamente lo que varía entre las estructuras de control de los diferentes lenguajes es su sintaxis, cada lenguaje tiene una sintaxis propia para expresar la estructura.

Otros lenguajes ofrecen estructuras diferentes, como por ejemplo los comandos guardados.

Contenido

Tipos de estructura de control

Algunas estructuras de control en el lenguaje Java

Antecendentes

El término "estructuras de control", viene del campo de la ciencia computacional. Cuando se presentan implementaciones de Java para las estructuras de control, nos referimos a ellas con la terminología de la Especificación del lenguaje Java, que se refiera a ella como instrucciones.

Ejecución secuencial

Pero por lo general las instrucciones se ejecutan una después de la otra, en el orden en que están escritas, es decir, en secuencia. Este proceso se conoce como ejecución secuencial.

Transferencia de control

En Java, como en otros lenguajes de programación por excelencia como C y/o C++, el programador puede especificar que las siguientes instrucciones a ejecutarse tal vez no sea la siguiente en secuencia. Esto se conoce como transferencia de control. Hay que tener en cuenta que la instrucción goto es una palabra reservada pero no se utiliza ni se recomienda. Un programa bien estructurado no necesita de esta instrucción. Si sabes programar no utilizaras goto.

Estructura de control: selección if simple

Se trata de una estructura de control que permite redirigir un curso de acción según la evaluación de una condición simple, sea falsa o verdadera. Por ejemplo: Escribir un programa en Java que compare dos números e indique si cuál es mayor, menor, mayor y/o igual, menor y/o igual, o si son iguales:

  String strComparacion = "";

...

  if( numero1 == numero2 )
     strComparacion += numero1 + " == " + numero2;
  if( numero1 > numero2 )
     strComparacion += numero1 + " > " + numero2;
  if( numero1 < numero2 )
     strComparacion += numero1 + " < " + numero2;
  if( numero1 >= numero2 )
     strComparacion += numero1 + " >= " + numero2;
  if( numero1 <= numero2 )
     strComparacion += numero1 + " <= " + numero2;
  System.out.println(strComparacion);

...

If-Then-Else

Si la condición es verdadera, se ejecuta el bloque de sentencias 1, de lo contrario, se ejecuta el bloque de sentencias 2.

   IF (Condición) THEN
      (Bloque de sentencias 1)
   ELSE
      (Bloque de sentencias 2)
   END IF

Select-Case

  • Se evalúa la expresión, dando como resultado un número.
  • Luego, se recorren los "Case" dentro de la estructura buscando que el número coincida con uno de los valores.
  • Es necesario que coincidan todos sus valores.
  • Cuando se encuentra la primera coincidencia, se ejecuta el bloque de sentencias correspondiente y se sale de la estructura Select-Case.
  • Si no se encuentra ninguna coincidencia con ningún valor, se ejecuta el bloque de sentencias de la sección "Case Else".
   SELECT (Expresión)
      CASE Valor1
         (Bloque de sentencias 1)
      CASE Valor2
         (Bloque de sentencias 2)
      CASE Valor n
         (Bloque de sentencias n)
      CASE ELSE
         (Bloque de sentencias "Else")
   END SELECT

Do-While

Mientras la condición sea verdadera, se ejecutarán las sentencias del bloque.

   DO WHILE (Condición)
      (Bloque de sentencias)
   LOOP

que también puede expresarse:

   WHILE (Condición)
      (Bloque de sentencias)
   WEND

Do-Until

Se ejecuta el bloque de sentencias, hasta que la condición sea verdadera

   DO
      (Bloque de sentencias)
   LOOP UNTIL (Condición)

For-Next

  • Primero, se evalúan las expresiones 1 y 2, dando como resultado dos números.
  • La variable del bucle recorrerá los valores desde el número dado por la expresión 1 hasta el número dado por la expresión 2.
  • El bloque de sentencias se ejecutará en cada uno de los valores que tome la variable del bucle.
   FOR (Variable) = (Expresión1) TO (Expresión2) STEP (Salto)
      (Bloque de sentencias)
   NEXT

Estructuras anidadas

Las estructuras de control básicas pueden anidarse, es decir pueden ponerse una dentro de otra.

Estructura For-Next dentro de una estructura If-Then-Else

   IF A > B THEN
      FOR X = 1 TO 5
         (Bloque de sentencias 1)
      NEXT
   ELSE
      (Bloque de instrucciones 2)
   END IF

Estructura If-Then-Else dentro de estructura For-Next

   FOR x = 10 TO 20 STEP 2
      IF A == C THEN
       (Bloque de instrucciones)
      ELSE
       (Bloque de instrucciones)
      END IF
   NEXT

Estructura For-Next que está dentro de estructura Do-While

 DO WHILE A > 0
    FOR X = 1 TO 10
       (Bloque de instrucciones)
    NEXT
    A = A - 1
 LOOP

Estructura Do-While que está dentro de estructura For-Next

   FOR X = 1 TO 10
      DO WHILE X < A
         (Bloque de instrucciones)
      LOOP
   NEXT

Estructura If-Then dentro de estructura For-Next dentro de estructura Do-While

   DO WHILE A > 0
      FOR X = 1 TO 10
         IF A = C THEN
            (Bloque de instrucciones1)
         ELSE
            (Bloque de instrucciones2)
         END IF
      NEXT
   A = A - 1
   LOOP

Véase también


Wikimedia foundation. 2010.

Mira otros diccionarios:

  • Estructuras de control — En lenguajes de programación, las estructuras de control permiten modificar el flujo de ejecución de las instrucciones de un programa. Con las estructuras de control se puede: ● De acuerdo a una condición, ejecutar un grupo u otro de sentencias… …   Enciclopedia Universal

  • Control del bucle while do — Saltar a navegación, búsqueda Controla el bucle while o bucle 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.… …   Wikipedia Español

  • Estructuras de conexión — Saltar a navegación, búsqueda La Estructura de conexión hace referencia a la interconexión de las unidades funcionales de un ordenador mediante una determinada organización. Para la interconexión existen diferentes posibilidades. Cabe destacar… …   Wikipedia Español

  • Control de nivel — Los controles de nivel son dispositivos o estructuras hidráulicas cuya finalidad es la de garantizar el nivel del agua en un rango de variación preestablecido. Existen algunas diferencias en la concepción de los controles de nivel, según se trate …   Wikipedia Español

  • Control motor — Este artículo o sección sobre medicina necesita ser wikificado con un formato acorde a las convenciones de estilo. Por favor, edítalo para que las cumpla. Mientras tanto, no elimines este aviso puesto el 23 de mayo de 2010. También puedes ayudar… …   Wikipedia Español

  • Control de la población — Mapa del mundo que muestra los países por la tasa de fertilidad. Periodo 2005 2010.   …   Wikipedia Español

  • Lógica de control — Es el conjunto de operaciones lógicas y estructuras de control que determinan el orden de ejecución de las instrucciones de un programa. En el paradigma MVC Modelo Vista Controlador los datos, la interfaz de usuario y la lógica de control son los …   Wikipedia Español

  • Punto de control — Saltar a navegación, búsqueda Los puntos de control (checkpoints en inglés) son mecanismos moleculares (no necesariamente agregados moleculares) que verifican que se cumplen las condiciones necesarias para permitir el paso de una fase del ciclo… …   Wikipedia Español

  • Tablero de control — Este artículo o sección sobre tecnología necesita ser wikificado con un formato acorde a las convenciones de estilo. Por favor, edítalo para que las cumpla. Mientras tanto, no elimines este aviso puesto el 9 de diciembre de 2008. También puedes… …   Wikipedia Español

  • Inversión de Control — Saltar a navegación, búsqueda Inversión de control (Inversion of Control en inglés, IoC) es un método de programación en el que el flujo de ejecución de un programa se invierte respecto a los métodos de programación tradicionales, en los que la… …   Wikipedia Español

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”