Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
Fundamentos de Programación
Tema n.° 5
Estructuras de control
Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
Índice
Pág.
Introducción 3
5.1. Estructuras de control secuenciales 3
5.1.1. Representación de la estructura de control secuencial
(pseudocódigo) 3
5.2. Estructuras de control condicionales o selectivas 3
5.3. Clasificación de las estructuras de control condicionales
5.3.1. La sentencia if 4
5.3.2. La sentencia if de dos alternativas if-else 5
5.3.3. Sentencia de control switch 6
5.3.4. Expresiones condicionales: el operador ? 7
Recursos complementarios 7
Referencias 8
Autoevaluación 9
Tema n.° 5: Estructuras de control 2
Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
Introducción
Las estructuras de control controlan el flujo de ejecución de un programa, es
decir, permiten combinar instrucciones o sentencias individuales en una simple
unidad lógica con un punto de entrada y un punto de salida.
5.1. Estructuras de control secuenciales
Las estructuras de control secuenciales son aquellas en que las acciones
(instrucciones) se ejecutan sucesivamente, una a continuación de otra, sin
posibilidad de omitir ninguna y sin bifurcación.
5.1.1. Representación de la estructura de control secuencial (pseudocódigo)
Figura 1
Ejemplo en pseudocódigo de la estructura de control secuencial
Inicio
acción1;
acción2;
acción3;
Fin
5.2. Estructuras de control condicionales o selectivas
Las estructuras de control condicionales o selectivas nos permiten decidir
qué ejecutar y qué no en un programa.
Tema n.° 5: Estructuras de control 3
Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
Representación de la estructura de control condicional (pseudocódigo)
Figura 2
Ejemplo en pseudocódigo de la estructura de control condicional
5.3. Clasificación de las estructuras de control condicionales
5.3.1. La sentencia if
En la programación, la estructura de control de selección principal es una
sentencia if. Esta sentencia if tiene dos alternativas o formatos posibles. A
continuación consta el siguiente formato sencillo.
Figura 3
Ejemplo en instrucción de la estructura de control condicional if
If (condición ) acciones
La sentencia if funciona evaluando primero la expresión que se halla entre el
paréntesis. Si la expresión es verdadera se ejecuta la acción-instrucción(es) y a
continuación continúa con la siguiente sentencia del programa.
Tema n.° 5: Estructuras de control 4
Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
Figura 4
Ejemplo en diagrama de la estructura de control condicional if
5.3.2. La sentencia if de dos alternativas – if – else
La sintaxis de la sentencia if-else es la siguiente.
Figura 5
Ejemplo en instrucción de la estructura de control condicional if-else
If (condición ) sentencia1; else sentencia2;
Figura 6
Ejemplo en diagrama de la estructura de control condicional if-else
Tema n.° 5: Estructuras de control 5
Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
5.3.3. Sentencia de control switch
Esta sentencia se utiliza para seleccionar una de entre múltiples alternativas.
La sentencia switch es especialmente útil cuando la selección se basa en el valor
de una variable simple o de una expresión simple denominada expresión de control
o selector. El valor de esta expresión puede ser de tipo entero o carácter, pero no
decimal.
Figura 7
Ejemplo en instrucción de la estructura de control condicional switch
switch (selector)
{ case etiqueta1 : sentencia 1;
break;
case etiqueta2 : sentencia 2;
break;
case etiqueta3 : sentencia 3;
break;
case etiquetan : sentencia n;
break;
default: sentenciad; (opcional)
}
La forma de operar de esta estructura es evaluando el selector que es una
variable entera o carácter, y luego ese valor es comparado con cada una de las
etiquetas del case. Hay que recordar que cada etiqueta debe tener un valor
diferente de las otras. Es habitual que después de cada bloque de sentencias
correspondientes a una sentencia se debe terminar la ejecución del switch, para
ello se sitúa la sentencia break como última sentencia de bloque.
Cabe indicar que la sentencia switch es idónea para implementar menús. En
la programación, podemos llamar menús a una lista de alternativas para que se
pueda escoger una opción entre diferentes.
Tema n.° 5: Estructuras de control 6
Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
5.3.4. Expresiones condicionales: el operador ?
Este tipo de expresión condicional tiene el siguiente formato.
Figura 8
Ejemplo en instrucción de la estructura de control condicional operador ?
Condición ? expresión1 : expresión2
Diferencia entre las estructuras de control secuenciales y condicionales
Las estructuras condicionales comparan una variable contra otro(s) valor
(es), para que, sobre la base del resultado de esta comparación, se siga un curso
de acción dentro del programa; en cambio, la estructura secuencial es aquella en la
que una acción (instrucción) sigue a otra en secuencia, por lo tanto, sí son
diferentes.
Recursos complementarios
Video sobre las estructuras secuenciales
https://www.youtube.com/watch?v=tWppDZIY_2Y
Video acerca de las estructuras selección switch
https://www.youtube.com/watch?v=OHj8_6f6QlI
Tema n.° 5: Estructuras de control 7
Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
Video sobre las estructuras selección múltiple-switch
https://www.youtube.com/watch?v=MRAkE7oOoE4
Referencias
Gottfried, B. S. (2005). Programación en C (segunda edición revisada). Madrid:
McGraw-Hill Interamericana de España, S.A.U.
https://es.slideshare.net/desantiago/programacion-en-c-de-byron
Joyanes Aguilar, L. (2008). Fundamentos de programación. Algoritmos, estructura
de datos y objetos (cuarta edición). Madrid, España: McGraw-Hill
Interamericana.
https://combomix.net/wp-content/uploads/2017/03/Fundamentos-de-
programaci%C3%B3n-4ta-Edici%C3%B3n-Luis-Joyanes-Aguilar-2.pdf
Tema n.° 5: Estructuras de control 8
Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
Autoevaluación
1. ¿Cuál es la forma correcta de usar múltiples condiciones en una sentencia
if-else en C?
Usando varios bloques de if-else anidados.
Usando el operador lógico OR (||) entre las condiciones.
Usando el operador lógico AND (&&) entre las condiciones.
Usando la cláusula else-if para cada condición adicional.
2. ¿Cuál de las siguientes opciones representa correctamente la estructura de
control secuencial en pseudocódigo?
for (i = 1; i <= 10; i++) { }
while (i <= 10) { i++; }
if (condition) { }
Secuencia de instrucciones una tras otra
3. ¿Qué estructura de control se utiliza para tomar decisiones basadas en una
condición?
Bucle for
Estructura de control switch
Estructura de control if
Sentencia continue
4. En pseudocódigo, ¿cómo se representa la estructura de control if para
evaluar una condición única?
Tema n.° 5: Estructuras de control 9
Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
if (condición) { }
if (condición) then { }
Si (condición) { }
Si (condición) entonces { }
5. ¿Qué estructura de control condicional se utiliza cuando se desea ejecutar
un bloque de código si la condición es verdadera y otro bloque si la
condición es falsa?
La sentencia if
La sentencia if de dos alternativas if-else
Sentencia de control switch
Expresiones condicionales: ¿el operador?
6. ¿Cuál de las siguientes opciones describe correctamente el propósito de la
sentencia de control switch?
Evaluar una expresión condicional y seleccionar diferentes caminos de ejecución
basados en su resultado
Realizar una serie de comparaciones lógicas en una cadena de caracteres
Seleccionar aleatoriamente entre dos bloques de código
Crear un bucle que se ejecuta hasta que se cumple una condición específica
7. ¿Qué ocurre si no se usa la sentencia break en C++?
El algoritmo entra en un bucle infinito
El algoritmo no se ejecuta.
El algoritmo seguirá ejecutando la siguiente instrucción que este dentro del bucle
El algoritmo no se seguirá ejecutando la siguiente instrucción
Tema n.° 5: Estructuras de control 10
Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
8. ¿Qué sucede si ninguna de las condiciones coincide con el valor evaluado
en una sentencia switch?
El programa genera un error de sintaxis.
Se ejecuta el código dentro del bloque de la cláusula default.
El programa se detiene abruptamente.
La sentencia switch entra en un bucle infinito.
9. ¿Cuál es la diferencia principal entre una sentencia switch y una serie de
sentencias if-else anidadas?
La sentencia switch permite la evaluación de múltiples condiciones
simultáneamente.
Una serie de sentencias if-else anidadas es más eficiente que una sentencia
switch.
La sentencia switch solo puede evaluar expresiones booleanas.
La sentencia switch se utiliza cuando hay múltiples opciones para evaluar una
expresión.
10. ¿Cuál de las siguientes opciones describe mejor el comportamiento de
una sentencia switch cuando se encuentra un caso que coincide con la
expresión evaluada?
Se ejecuta el código dentro del caso y luego se sale de la sentencia switch.
Se ejecuta el código dentro del caso y luego se evalúan los casos restantes.
Se ejecuta el código dentro del caso, pero no se sale automáticamente de la
sentencia switch.
Tema n.° 5: Estructuras de control 11
Vicerrectorado de Docencia
Unidad de Apoyo a la Formación Académica
Se sale automáticamente de la sentencia switch sin ejecutar ningún código
adicional.
Tema n.° 5: Estructuras de control 12