TAI
Tema

Estructuras condicionales para Oposiciones TAI: Guía Completa

📝 33 preguntas 📖 Teoría 🎯 Preparación TAI

💡 Qué aprenderás

En este tema estudiarás todos los conceptos necesarios para responder correctamente las preguntas relacionadas con Estructuras condicionales en la oposición.

¿Qué son las estructuras condicionales?

Las estructuras condicionales son instrucciones de control que permiten que un programa ejecute diferentes bloques de código en función de si se cumple o no una determinada condición.

Gracias a ellas, un programa puede tomar decisiones durante su ejecución, adaptando su comportamiento según los datos de entrada o el estado del sistema.

📖 Definición
Las estructuras condicionales constituyen uno de los pilares fundamentales de la programación estructurada junto con las estructuras secuenciales y repetitivas.

Conceptos fundamentales

Para comprender las estructuras condicionales es imprescindible conocer los siguientes conceptos:

  • Condición: expresión lógica cuyo resultado es verdadero o falso.
  • Expresión relacional: compara dos valores.
  • Expresión lógica: combina varias condiciones mediante operadores lógicos.
  • Bloque de instrucciones: conjunto de sentencias que se ejecutan si la condición se cumple.
  • Flujo de control: orden en el que se ejecutan las instrucciones del programa.
🎯 Muy preguntado
Toda estructura condicional evalúa una condición que únicamente puede tener dos resultados: verdadero (true) o falso (false).

Funcionamiento de una estructura condicional

El funcionamiento básico es el siguiente:

Evaluar condición

        │

 ¿Verdadera?

   ┌────┴────┐

  Sí         No

   │          │

Bloque A   Bloque B

   │          │

   └────┬─────┘

 Continuar programa

El programa evalúa una condición y decide qué camino seguir.

💡 Consejo para el examen
Solo se ejecuta el bloque cuya condición resulte verdadera.

Operadores relacionales

Los operadores relacionales permiten comparar valores.

Operador Significado
== Igual que
!= Distinto de
> Mayor que
< Menor que
>= Mayor o igual que
<= Menor o igual que

Ejemplo:

edad >= 18
🎯 Muy preguntado
No debe confundirse el operador de comparación (==) con el operador de asignación (=) en muchos lenguajes de programación.

Operadores lógicos

Permiten combinar varias condiciones.

Operador Significado
AND (&&) Ambas condiciones deben cumplirse
OR (
NOT (!) Invierte el resultado de la condición

Ejemplo:

edad >= 18 AND carnet = verdadero
💡 Consejo para el examen
Las expresiones complejas suelen combinar operadores relacionales y operadores lógicos.

Estructura condicional simple (if)

La estructura if ejecuta un bloque únicamente cuando la condición es verdadera.

Sintaxis

Si condición entonces
    instrucciones
Fin Si

Funcionamiento

Condición

    │

 ¿Verdadera?

   │

 Sí

   │

Instrucciones

   │

Continuar
🎯 Muy preguntado
Si la condición es falsa, el bloque simplemente no se ejecuta.

Estructura condicional doble (if-else)

Permite ejecutar un bloque cuando la condición es verdadera y otro distinto cuando es falsa.

Sintaxis

Si condición entonces
    bloque A
Si no
    bloque B
Fin Si

Ejemplo

Si nota >= 5
    Aprobado
Si no
    Suspenso
Fin Si
💡 Consejo para el examen
Solo uno de los dos bloques puede ejecutarse.

Estructura condicional múltiple (if-else if)

Permite evaluar varias condiciones consecutivas.

Funcionamiento

Condición 1

    │

 ¿Verdadera?

 Sí │ No

    │

Condición 2

    │

 ¿Verdadera?

 Sí │ No

    │

Condición 3

    │

 ...

Se ejecuta el primer bloque cuya condición resulte verdadera.

🎯 Muy preguntado
El orden de las condiciones es importante, ya que una vez encontrada una condición verdadera no se evalúan las siguientes.

Estructura switch o selección múltiple

La estructura switch permite seleccionar una acción entre múltiples opciones basándose en el valor de una variable.

Funcionamiento

Switch(variable)

Caso 1
Caso 2
Caso 3
...
Caso por defecto

Cuándo utilizarla

Es recomendable cuando todas las comparaciones se realizan sobre una misma variable.

📌 Recuerda
Un switch suele ser más legible que una larga cadena de if-else if.

Condiciones anidadas

Es posible incluir una estructura condicional dentro de otra.

Ejemplo conceptual:

Si usuario válido

    Si contraseña correcta

        Acceso permitido

    Fin Si

Fin Si
💡 Consejo para el examen
Debe evitarse un exceso de anidamiento, ya que dificulta la lectura y el mantenimiento del código.

Evaluación de condiciones

Las condiciones pueden ser:

  • Simples.
  • Compuestas.
  • Anidadas.

Ejemplos:

edad >= 18
edad >= 18 AND nacionalidad = "España"
(edad >= 18 OR emancipado) AND documento_valido
🎯 Muy preguntado
El uso correcto de paréntesis evita errores de precedencia entre operadores.

Comparación entre if y switch

if switch
Evalúa cualquier condición lógica Evalúa el valor de una expresión
Mayor flexibilidad Mayor claridad cuando existen muchos casos
Admite operadores lógicos Normalmente compara valores constantes
Adecuado para condiciones complejas Adecuado para múltiples alternativas simples
💡 Consejo para el examen
Si las decisiones dependen únicamente del valor de una variable, suele preferirse switch.

Caso práctico

Situación

Un programa debe determinar el descuento aplicable según el tipo de cliente.

  • Cliente Premium → 20 %
  • Cliente Estándar → 10 %
  • Resto → Sin descuento

Solución

La estructura más adecuada es un switch, ya que todas las decisiones dependen del valor de una única variable (tipoCliente).

Si, por el contrario, el descuento dependiera simultáneamente del importe de compra, la antigüedad y el tipo de cliente, sería más apropiado utilizar una estructura if-else.

🎯 Muy preguntado
Elegir la estructura adecuada mejora la claridad, el mantenimiento y la eficiencia del código.

Ventajas e inconvenientes

Ventajas

  • Permiten tomar decisiones durante la ejecución.
  • Hacen posible desarrollar algoritmos complejos.
  • Mejoran la flexibilidad del programa.
  • Facilitan la adaptación a diferentes situaciones.

Inconvenientes

  • Un exceso de condiciones dificulta la lectura.
  • El anidamiento excesivo reduce la mantenibilidad.
  • Un orden incorrecto de las condiciones puede provocar errores lógicos.

Errores habituales

⚠️ Error habitual
Los errores más frecuentes al estudiar estructuras condicionales son:
  • Confundir el operador de asignación (=) con el de comparación (==).
  • Escribir condiciones imposibles o redundantes.
  • Colocar las condiciones en un orden incorrecto.
  • Olvidar el caso por defecto (default) en un switch.
  • Anidar demasiadas estructuras condicionales.
  • Confundir operadores lógicos (AND, OR, NOT).

Cómo evitarlos

  • Diferenciar claramente asignación y comparación.
  • Simplificar las condiciones siempre que sea posible.
  • Ordenar las condiciones de forma lógica.
  • Utilizar switch cuando exista una única variable de decisión.
  • Emplear paréntesis para aclarar expresiones complejas.

Relaciones con otros temas

Las estructuras condicionales están directamente relacionadas con:

  • Algoritmos.
  • Diagramas de flujo.
  • Variables.
  • Tipos de datos.
  • Operadores relacionales.
  • Operadores lógicos.
  • Estructuras repetitivas.
  • Funciones.
  • Programación estructurada.
  • Programación orientada a objetos.
📌 Recuerda
En exámenes es muy frecuente relacionar las estructuras condicionales con if, if-else, switch, operadores relacionales, operadores lógicos y diagramas de flujo.

Conceptos clave para recordar

[!NOTE]

  • Las estructuras condicionales permiten tomar decisiones durante la ejecución de un programa.
  • Evalúan una condición cuyo resultado siempre es verdadero o falso.
  • La estructura if ejecuta un bloque únicamente si la condición es verdadera.
  • La estructura if-else permite elegir entre dos caminos alternativos.
  • La estructura if-else if evalúa varias condiciones de forma secuencial.
  • La estructura switch selecciona un bloque según el valor de una expresión.
  • Los operadores relacionales comparan valores y los operadores lógicos permiten combinar condiciones.
  • El orden de evaluación de las condiciones puede modificar el resultado del programa.
  • Un uso adecuado de las estructuras condicionales mejora la claridad, la mantenibilidad y la calidad del código.

📝 Preguntas de ejemplo

Comprueba si reconoces este tipo de preguntas.

1. ¿Cuál es la finalidad principal de una estructura condicional?
2. ¿Qué valor debe tener una condición para ejecutar el bloque de un if?
3. ¿Qué estructura permite ejecutar un bloque alternativo cuando la condición del if es falsa?
4. ¿Qué estructura permite evaluar varias condiciones de forma secuencial?
5. ¿Cuál es el resultado de la expresión 8 > 5?

Preguntas frecuentes

¿Qué es una estructura condicional?

Es una estructura de control que permite ejecutar diferentes bloques de código en función de si una condición se cumple o no.

¿Para qué sirven las estructuras condicionales?

Sirven para tomar decisiones dentro de un programa, modificando el flujo de ejecución según el resultado de una expresión lógica.

¿Qué es la instrucción if?

Es una estructura condicional que ejecuta un bloque de código cuando la condición especificada es verdadera.

¿Qué es la instrucción if-else?

Es una estructura que permite ejecutar un bloque de código si la condición es verdadera y otro distinto si es falsa.

¿Qué es una estructura if-else if?

Es una estructura que permite evaluar varias condiciones de forma secuencial hasta que una de ellas se cumple.

¿Qué es la instrucción switch?

Es una estructura de selección múltiple que ejecuta diferentes bloques de código según el valor de una expresión.

¿Qué diferencia existe entre if y switch?

if permite evaluar cualquier expresión lógica, mientras que switch selecciona una acción en función del valor de una única expresión.

¿Qué son las condiciones anidadas?

Son estructuras condicionales que contienen otras condiciones en su interior para resolver decisiones más complejas.

¿Qué es una expresión booleana?

Es una expresión cuyo resultado solo puede ser verdadero o falso y que se utiliza para controlar las estructuras condicionales.

¿Qué suele preguntarse en el examen?

Las preguntas suelen centrarse en el funcionamiento de if, if-else y switch, las diferencias entre estas estructuras, la evaluación de expresiones booleanas y el flujo de ejecución.


Temas relacionados

  • Estructuras de control
  • Operadores
  • Operadores lógicos
  • Operadores relacionales
  • Expresiones
  • Bucles
  • Variables

¿Has terminado de estudiar?

Ahora pon a prueba tus conocimientos realizando el test completo de este tema.

Comenzar test

Utilizamos cookies

Utilizamos cookies analíticas para conocer el uso de la plataforma y mejorar la experiencia del usuario. Puedes aceptar o rechazarlas en cualquier momento. Más información en nuestra Política de Cookies .