Las sentencias condicionales son fundamentales en cualquier lenguaje de programación, ya que permiten tomar decisiones basadas en condiciones específicas. En Swift, las sentencias condicionales más comunes son if, else if, else y switch.

  1. Sentencia if

La sentencia if evalúa una condición y ejecuta un bloque de código si la condición es verdadera.

Sintaxis

if condición {
    // Código a ejecutar si la condición es verdadera
}

Ejemplo

let edad = 18

if edad >= 18 {
    print("Eres mayor de edad.")
}

En este ejemplo, la condición edad >= 18 es verdadera, por lo que se ejecuta el bloque de código dentro del if.

  1. Sentencia if-else

La sentencia if-else permite ejecutar un bloque de código si la condición es verdadera y otro bloque si la condición es falsa.

Sintaxis

if condición {
    // Código a ejecutar si la condición es verdadera
} else {
    // Código a ejecutar si la condición es falsa
}

Ejemplo

let edad = 16

if edad >= 18 {
    print("Eres mayor de edad.")
} else {
    print("Eres menor de edad.")
}

En este caso, la condición edad >= 18 es falsa, por lo que se ejecuta el bloque de código dentro del else.

  1. Sentencia if-else if-else

La sentencia if-else if-else permite evaluar múltiples condiciones en secuencia.

Sintaxis

if condición1 {
    // Código a ejecutar si la condición1 es verdadera
} else if condición2 {
    // Código a ejecutar si la condición2 es verdadera
} else {
    // Código a ejecutar si ninguna de las condiciones anteriores es verdadera
}

Ejemplo

let nota = 85

if nota >= 90 {
    print("Excelente")
} else if nota >= 75 {
    print("Bueno")
} else {
    print("Necesitas mejorar")
}

En este ejemplo, la condición nota >= 90 es falsa, pero nota >= 75 es verdadera, por lo que se ejecuta el bloque de código correspondiente.

  1. Sentencia switch

La sentencia switch permite evaluar una expresión y ejecutar diferentes bloques de código basados en el valor de la expresión.

Sintaxis

switch expresión {
case valor1:
    // Código a ejecutar si la expresión es igual a valor1
case valor2:
    // Código a ejecutar si la expresión es igual a valor2
default:
    // Código a ejecutar si la expresión no coincide con ninguno de los valores anteriores
}

Ejemplo

let calificación = "B"

switch calificación {
case "A":
    print("Excelente")
case "B":
    print("Bueno")
case "C":
    print("Suficiente")
default:
    print("Calificación no válida")
}

En este caso, la expresión calificación es igual a "B", por lo que se ejecuta el bloque de código correspondiente.

Ejercicios Prácticos

Ejercicio 1

Escribe un programa que determine si un número es positivo, negativo o cero.

Solución

let número = -5

if número > 0 {
    print("El número es positivo.")
} else if número < 0 {
    print("El número es negativo.")
} else {
    print("El número es cero.")
}

Ejercicio 2

Escribe un programa que asigne una calificación basada en una nota numérica.

Solución

let nota = 92

switch nota {
case 90...100:
    print("A")
case 80..<90:
    print("B")
case 70..<80:
    print("C")
case 60..<70:
    print("D")
default:
    print("F")
}

Errores Comunes y Consejos

  1. Olvidar las llaves {} en las sentencias if y else: En Swift, las llaves son necesarias para definir el bloque de código que se ejecutará.

    if condición
        print("Esto causará un error")
    
  2. No cubrir todos los casos en una sentencia switch: Asegúrate de incluir un caso default para manejar cualquier valor no previsto.

    switch expresión {
    case valor1:
        // Código
    case valor2:
        // Código
    // Falta el caso default
    }
    
  3. Usar == en lugar de = para asignaciones: Recuerda que == se usa para comparar valores, mientras que = se usa para asignar valores.

    if x == 5 { // Correcto
        // Código
    }
    

Conclusión

Las sentencias condicionales son esenciales para controlar el flujo de un programa. En este módulo, hemos cubierto las sentencias if, if-else, if-else if-else y switch. Practica estos conceptos con los ejercicios proporcionados para reforzar tu comprensión y estar preparado para el siguiente tema sobre bucles.

© Copyright 2024. Todos los derechos reservados