Operadores lógicos Parte 2 (NOT)
Parte de la sección Fundamentos del Journey de R de Coddy — lección 18 de 78.
El operador NOT (!) invierte un valor lógico a su opuesto. Convierte TRUE en FALSE y FALSE en TRUE.
is_raining <- TRUE
!is_raining # FALSE
is_closed <- FALSE
!is_closed # TRUEEste operador es útil cuando quieres comprobar si algo no se cumple. Por ejemplo, en lugar de comprobar si un usuario ha iniciado sesión, es posible que necesites comprobar si no ha iniciado sesión:
logged_in <- FALSE
if (!logged_in) {
# Mostrar mensaje de inicio de sesión
}Puedes combinar NOT con los operadores AND y OR para crear condiciones más complejas:
has_ticket <- TRUE
is_vip <- FALSE
# Puede entrar si tiene una entrada Y NO es VIP (entrada regular)
regular_entry <- has_ticket && !is_vip # TRUEAquí se muestra cómo NOT transforma los valores lógicos:
| A | !A |
|---|---|
| VERDADERO | FALSO |
| FALSO | VERDADERO |
Desafío
FácilAplica el operador NOT (!) para invertir valores lógicos y combínalo con otros operadores lógicos.
Se te proporcionan las siguientes variables:
is_raining <- TRUE
has_umbrella <- FALSE
is_weekend <- TRUE
has_homework <- TRUE
is_tired <- FALSEUsa el operador NOT junto con los operadores AND y OR para crear las siguientes variables:
- Crea una variable llamada
stay_dryque almacene lo opuesto deis_raining - Crea una variable llamada
will_get_wetque almaceneTRUEsi está lloviendo Y la persona NO tiene un paraguas - Crea una variable llamada
can_relaxque almaceneTRUEsi es fin de semana Y la persona NO tiene tarea - Crea una variable llamada
should_go_outque almaceneTRUEsi NO está lloviendo O la persona tiene un paraguas - Crea una variable llamada
productive_dayque almaceneTRUEsi la persona NO está cansada Y NO es fin de semana
Usa la función print() para mostrar stay_dry, will_get_wet, can_relax, should_go_out y productive_day en ese orden exacto.
Hoja de referencia
El operador NOT (!) invierte un valor lógico a su opuesto:
is_raining <- TRUE
!is_raining # FALSE
is_closed <- FALSE
!is_closed # TRUEUsa NOT para comprobar si algo no es el caso:
logged_in <- FALSE
if (!logged_in) {
# Mostrar aviso de inicio de sesión
}Combina NOT con los operadores AND (&&) y OR (||):
has_ticket <- TRUE
is_vip <- FALSE
regular_entry <- has_ticket && !is_vip # TRUE| A | !A |
|---|---|
| TRUE | FALSE |
| FALSE | TRUE |
Pruébalo tú mismo
# Variables dadas
is_raining <- TRUE
has_umbrella <- FALSE
is_weekend <- TRUE
has_homework <- TRUE
is_tired <- FALSE
# TODO: Escribe tu código a continuación
# Usa el operador NOT (!) junto con los operadores AND (&) y OR (|)
# para crear las variables requeridas
# 1. stay_dry - lo opuesto de is_raining
# 2. will_get_wet - TRUE si está lloviendo Y NO tiene paraguas
# 3. can_relax - TRUE si es fin de semana Y NO tiene tarea
# 4. should_go_out - TRUE si NO está lloviendo O tiene paraguas
# 5. productive_day - TRUE si NO está cansado Y NO es fin de semana
# Imprime los resultados en orden
print(stay_dry)
print(will_get_wet)
print(can_relax)
print(should_go_out)
print(productive_day)Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores Parte 2
Operadores lógicos (AND, OR)Operadores lógicos Parte 2 (NOT)Resumen - Lógica simpleLógica vectorizada Parte 1Lógica vectorizada Parte 27Calculadora para dividir la cuenta
Mensaje de bienvenidaObtener la entrada del usuario2Variables y tipos de datos
Tipo de dato numéricoTipo de dato enteroTipo de dato de caracteresTipo de dato lógicoComprobación de tipos de datosConvenciones de nomenclaturaValores faltantes: NAResumen - Creación de variables8Bucles
Bucle ForBucle WhileBreakNext (Continue)Repaso - FactorialGeneración de secuencias (seq, :)Bucles anidadosRepaso - Entrada dinámica3Operadores Parte 1
Operadores aritméticosDivisión entera y móduloOperadores de asignaciónRepaso - Matemáticas simplesOperadores de comparación6E/S básica
Imprimir salidaCat para salidaSalida con variablesLectura de entrada con readline()Conceptos básicos de conversión de tiposResumen - Calculadora de edadResumen - Verdadero o falso9Funciones
Declarar una funciónArgumentos de una funciónValores de retornoRepaso - Función SigmaRepaso - Función de validaciónValores de parámetros por defecto