Las sentencias condicionales evalúan una expresión lógica (i.e. condición) y ejecutan, o no, un bloque de intrucciones dependiendo de si la expresión es verdadera (TRUE
) o falsa (FALSE
). Permiten que los programas “tomen decisiones” y varíen su curso de acción.
Los condicionales en R se implementa mediante la sentencia if
y sus cláusulas else
y else if
.
if
La sentencia if evalúa una condición (i.e. una expresión lógica) y ejecuta un bloque de instrucciones, si es verdadera. El bloque se delimita con los caracteres de “llaves”: {}
.
if (condicion) {
# bloque de instrucciones a ejecutar si la condicion es verdadera
}
Por ejemplo:
edad <- 25
if (edad >= 18) {
print("Adulto")
}
[1] "Adulto"
Ya sea que se ejecute o no el bloque del if
, el programa continúa con las instrucciones que siguen al bloque, si las hay.
else
Una sentencia if
puede ir seguida de una cláusula else
, la cual define un bloque que se ejecuta si la condición es falsa. Por ejemplo:
else if
Una sentencia if
también puede ir seguida de una o varias cláusulas else if
, las cuales evalúan condiciones adicionales.
edad <- 70
if (edad < 18) {
print("Menor")
} else if (edad < 65) {
print("Adulto")
} else {
print("Adulto mayor")
}
[1] "Adulto mayor"
Las cláusulas else if
deben escribirse antes de la cláusula else
, la cual es siempre la última, si es que está presente. Tanto las cláusulas else if
como la cláusula else
son opcionales.
Ejercicio 01:
a. Defina una función con nombre interpretacion_imc()
que reciba como argumento un número correspondiente al índice de masa corporal (IMC) de una persona. Debe retornar una hilera de caracteres correspondiente a la interpretación del IMC (“Bajo peso”, “Normal”, “Sobrepeso”, “Obesidad”), de acuerdo con la tabla disponible en Índice de mapas corporal - Wikipedia.
If you see mistakes or want to suggest changes, please create an issue on the source repository.
Text and figures are licensed under Creative Commons Attribution CC BY-SA 4.0. Source code is available at https://github.com/gf0604-procesamientodatosgeograficos/2021i-leccion-06/, unless otherwise noted. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".