Las sentencias condicionales son fundamentales en cualquier lenguaje de programación, ya que permiten tomar decisiones basadas en condiciones específicas. En Objective-C, las sentencias condicionales más comunes son if, else if, else y switch. En esta sección, aprenderemos cómo utilizarlas para controlar el flujo de ejecución de nuestros programas.

  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) {
    // Bloque de código a ejecutar si la condición es verdadera
}

Ejemplo

int edad = 20;

if (edad >= 18) {
    NSLog(@"Eres mayor de edad.");
}

En este ejemplo, si la variable edad es mayor o igual a 18, se imprimirá "Eres mayor de edad." en la consola.

  1. Sentencia else

La sentencia else se utiliza junto con if para ejecutar un bloque de código alternativo si la condición es falsa.

Sintaxis

if (condición) {
    // Bloque de código a ejecutar si la condición es verdadera
} else {
    // Bloque de código a ejecutar si la condición es falsa
}

Ejemplo

int edad = 16;

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

En este ejemplo, si la variable edad es menor que 18, se imprimirá "Eres menor de edad." en la consola.

  1. Sentencia else if

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

Sintaxis

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

Ejemplo

int nota = 85;

if (nota >= 90) {
    NSLog(@"Calificación: A");
} else if (nota >= 80) {
    NSLog(@"Calificación: B");
} else if (nota >= 70) {
    NSLog(@"Calificación: C");
} else {
    NSLog(@"Calificación: F");
}

En este ejemplo, se evaluarán las condiciones en secuencia y se imprimirá la calificación correspondiente en la consola.

  1. Sentencia switch

La sentencia switch es útil cuando se necesita comparar una variable con múltiples valores posibles. Es una alternativa más limpia y legible a múltiples sentencias else if.

Sintaxis

switch (expresión) {
    case valor1:
        // Bloque de código a ejecutar si expresión == valor1
        break;
    case valor2:
        // Bloque de código a ejecutar si expresión == valor2
        break;
    // Más casos...
    default:
        // Bloque de código a ejecutar si ninguno de los casos anteriores coincide
        break;
}

Ejemplo

int diaDeLaSemana = 3;

switch (diaDeLaSemana) {
    case 1:
        NSLog(@"Lunes");
        break;
    case 2:
        NSLog(@"Martes");
        break;
    case 3:
        NSLog(@"Miércoles");
        break;
    case 4:
        NSLog(@"Jueves");
        break;
    case 5:
        NSLog(@"Viernes");
        break;
    case 6:
        NSLog(@"Sábado");
        break;
    case 7:
        NSLog(@"Domingo");
        break;
    default:
        NSLog(@"Día inválido");
        break;
}

En este ejemplo, si diaDeLaSemana es 3, se imprimirá "Miércoles" en la consola.

Ejercicios Prácticos

Ejercicio 1

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

Solución

int numero = -5;

if (numero > 0) {
    NSLog(@"El número es positivo.");
} else if (numero < 0) {
    NSLog(@"El número es negativo.");
} else {
    NSLog(@"El número es cero.");
}

Ejercicio 2

Escribe un programa que determine la categoría de edad de una persona (niño, adolescente, adulto, anciano) basada en su edad.

Solución

int edad = 45;

if (edad >= 0 && edad <= 12) {
    NSLog(@"Niño");
} else if (edad >= 13 && edad <= 19) {
    NSLog(@"Adolescente");
} else if (edad >= 20 && edad <= 64) {
    NSLog(@"Adulto");
} else if (edad >= 65) {
    NSLog(@"Anciano");
} else {
    NSLog(@"Edad inválida");
}

Ejercicio 3

Escribe un programa que imprima el nombre del mes basado en un número del 1 al 12 usando una sentencia switch.

Solución

int mes = 7;

switch (mes) {
    case 1:
        NSLog(@"Enero");
        break;
    case 2:
        NSLog(@"Febrero");
        break;
    case 3:
        NSLog(@"Marzo");
        break;
    case 4:
        NSLog(@"Abril");
        break;
    case 5:
        NSLog(@"Mayo");
        break;
    case 6:
        NSLog(@"Junio");
        break;
    case 7:
        NSLog(@"Julio");
        break;
    case 8:
        NSLog(@"Agosto");
        break;
    case 9:
        NSLog(@"Septiembre");
        break;
    case 10:
        NSLog(@"Octubre");
        break;
    case 11:
        NSLog(@"Noviembre");
        break;
    case 12:
        NSLog(@"Diciembre");
        break;
    default:
        NSLog(@"Mes inválido");
        break;
}

Conclusión

En esta sección, hemos aprendido cómo utilizar las sentencias condicionales if, else if, else y switch en Objective-C para controlar el flujo de ejecución de nuestros programas. Estas herramientas son esenciales para tomar decisiones basadas en condiciones específicas y son fundamentales para la programación en cualquier lenguaje. Asegúrate de practicar con los ejercicios proporcionados para reforzar tu comprensión de estos conceptos. En la próxima sección, exploraremos los bucles, que nos permitirán repetir bloques de código bajo ciertas condiciones.

© Copyright 2024. Todos los derechos reservados