La palabra clave `else if`
Parte de la sección Fundamentos del Journey de GO de Coddy — lección 36 de 109.
Aprendamos a usar la palabra clave else if en Go para comprobar múltiples condiciones en secuencia. Esto es útil cuando necesitas más de dos resultados posibles en tu programa.
Primero, vamos a crear un programa que categorice la temperatura basándose en diferentes rangos:
temp := 75
if temp < 50 {
fmt.Println("It's cold")
} else if temp < 80 {
fmt.Println("It's pleasant")
} else {
fmt.Println("It's hot")
}Después de ejecutar este código, el programa mostrará "It's pleasant" en la pantalla. Esta es la razón: el programa primero comprueba si temp (75) es menor que 50. Como esto es falso, pasa a la siguiente condición y comprueba si temp es menor que 80.
Como 75 es efectivamente menor que 80, ejecuta ese bloque de código y muestra "It's pleasant". El bloque else final se omite porque ya se cumplió una condición.
Las condiciones se comprueban en orden de arriba hacia abajo, y solo se ejecuta el código de la primera condición que coincida. Una vez que se cumple una condición, las condiciones restantes no se comprueban en absoluto.
Desafío
FácilEn este desafío, practicarás el uso de la palabra clave else if para manejar múltiples condiciones.
Tienes una variable weather que contiene una cadena que describe el clima actual. Tu tarea es completar el código para imprimir diferentes mensajes basados en la condición climática:
- Si es "sunny", imprime "Wear sunscreen!"
- Si es "rainy", imprime "Bring an umbrella!"
- Si es "cold", imprime "Wear a jacket!"
- Para cualquier otra condición climática, imprime "Check the forecast!"
Hoja de referencia
Utiliza else if para comprobar múltiples condiciones en secuencia:
temp := 75
if temp < 50 {
fmt.Println("It's cold")
} else if temp < 80 {
fmt.Println("It's pleasant")
} else {
fmt.Println("It's hot")
}Las condiciones se comprueban de arriba a abajo, y solo se ejecuta la primera condición que coincida. Una vez que se cumple una condición, se omiten las condiciones restantes.
Pruébalo tú mismo
package main
import "fmt"
func main() {
// Esta variable contiene la condición climática actual
weather := "rainy"
// TODO: Completa la sentencia if-else if-else para imprimir el mensaje apropiado
if weather == "sunny" {
fmt.Println("Wear sunscreen!")
}
// Agrega tu código aquí
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores de comparación y lógicos
Operadores de comparación - Parte 1Operadores de comparación - Parte 2Operador lógico ANDOperador lógico OROperador lógico NOTConceptos básicos de precedencia de operadoresResumen: Realizar comparaciones7Flujo de control: Bucles
Explicación del bucle `for`Bucle `for` - BásicoBucle `for` - Solo condiciónLa palabra clave `break`La palabra clave `continue`Bucles anidadosResumen - Repetición de acciones2Variables y tipos de datos básicos
¿Qué es una variable?Inferencia de tipos con `:=`Enteros (int)Números de punto flotanteBooleanosStringsValores ceroConstantesConvenciones de nomenclaturaResumen - Variables y tipos5Entrada y salida básica
Salida con formatoVerbos de formatoImpresión de tiposObtener entrada básica del usuarioResumen: Entrada y salida8Funciones
Comprendiendo las funcionesDeclaración de una funciónLlamada a funcionesParámetros de funciónRetorno de un solo valorRetorno de múltiples valoresValores de retorno con nombreConceptos básicos del alcance de las funcionesResumen: Creando código reutilizable3Operadores básicos
Operadores aritméticosOperador de divisiónEl operador móduloOperador de asignaciónOperadores de asignación compuestaIncremento y decrementoResumen - Cálculos6Flujo de control: Condicionales
La sentencia `if`La palabra clave `else`La palabra clave `else if`Sombreado de variables en `if`Inicialización de variablesLa sentencia `switch``switch` con expresiones`switch` sin expresiónLa palabra clave `fallthrough`Resumen: Toma de decisiones