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.
- Sentencia
if
if
La sentencia if
evalúa una condición y ejecuta un bloque de código si la condición es verdadera.
Sintaxis
Ejemplo
En este ejemplo, si la variable edad
es mayor o igual a 18, se imprimirá "Eres mayor de edad." en la consola.
- Sentencia
else
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.
- Sentencia
else if
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.
- Sentencia
switch
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.
Curso de Programación en Objective-C
Módulo 1: Introducción a Objective-C
- Introducción a Objective-C
- Configuración del Entorno de Desarrollo
- Sintaxis y Estructura Básica
- Tipos de Datos y Variables
- Operadores y Expresiones
Módulo 2: Flujo de Control
Módulo 3: Funciones y Métodos
- Definición y Llamada de Funciones
- Parámetros de Función y Valores de Retorno
- Sintaxis de Métodos en Objective-C
- Métodos de Clase e Instancia
Módulo 4: Programación Orientada a Objetos
Módulo 5: Gestión de Memoria
- Introducción a la Gestión de Memoria
- Conteo Automático de Referencias (ARC)
- Retención y Liberación Manual
- Mejores Prácticas de Gestión de Memoria
Módulo 6: Temas Avanzados
Módulo 7: Trabajo con Datos
- Manejo de Archivos
- Serialización y Deserialización
- Conceptos Básicos de Redes
- Trabajo con JSON y XML