Diferencia entre revisiones de «Estructuras de control»

De Wikipedia, la enciclopedia libre
Contenido eliminado Contenido añadido
m Revertidos los cambios de 201.163.190.141 a la última edición de Kordas
Línea 132: Línea 132:
A = A - 1
A = A - 1
Loop
Loop

== Véase también ==

* [[Bucle (programación)]]
* [[Bucle for]]
* [[Bucle while]]
* [[Bucle repetir]]
* [[Bucle infinito]]
* [[Teorema del programa estructurado]]
* [[Programación estructurada]]
* [[Lenguaje de programación]]

[[Categoría:Estructuras de control]]

[[cs:Řídicí struktura]]
[[de:Kontrollstruktur]]
[[en:Control flow]]
[[fr:Structure de contrôle]]
[[he:לולאה]]
[[it:Struttura di controllo]]
[[ja:制御構造]]
[[nl:Control flow]]
[[pl:Przepływ sterowania]]
[[ta:கட்டுப்பாட்டு கட்டமைப்பு]]
[[uk:Цикл програми]]

Revisión del 18:05 26 may 2009

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.

Tipos de estructura de control

Algunas estructuras de control en el lenguaje BASIC y Visual Basic.

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

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)
   (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
   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(i=1;i<=10;i++)
{
    do
    {
        /* Bloque de instrucciones */
        a--;
    }
    while(a>0);
}

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