Menu
CoddyTech

Operadores lógicos Parte 3

Parte de la sección Fundamentos del Journey de Ruby de Coddy. Lección 19 de 88.

Ruby también ofrece alternativas basadas en palabras para los operadores lógicos: and, or y not. Funcionan de forma similar a &&, || y !, pero con una diferencia importante: tienen menor precedencia.

true and false   # false (igual que &&)
true or false    # true (igual que ||)
not true         # false (igual que !)

La menor precedencia significa que estos operadores se evalúan después de la asignación. Esto puede dar lugar a un comportamiento inesperado:

result = true && false   # result es false
result = true and false  # result es true!

En el segundo ejemplo, la asignación se realiza primero (result = true), después se evalúa and false, pero su resultado se descarta. Por eso la mayoría de los desarrolladores de Ruby prefieren &&, || y ! para las condiciones.

Lo mismo ocurre con puts: puts true and false imprime true, porque puts true se ejecuta primero. Para imprimir el resultado de un operador textual, encierra la expresión entre paréntesis: puts((true and false)) imprime false.

La palabra versiones suele reservarse para situaciones de control de flujo, que encontrarás más adelante. Por ahora, usa los operadores de símbolos (&&, ||, !) al escribir condiciones para evitar sorpresas.

challenge icon

Desafío

Fácil

Se te proporcionan las siguientes variables:

a = true
b = false
c = true

Usa los operadores lógicos basados en palabras (and, or, not) para evaluar y mostrar las siguientes expresiones, cada una en una línea aparte:

  1. a and b
  2. a or b
  3. not b
  4. a and c
  5. b or c
  6. not a

Cuando imprimas cada expresión, enciérrala entre paréntesis propios; por ejemplo, puts((true and false)).

Cada resultado debe ser true o false.

Pruébalo tú mismo

# Las variables ya están definidas
a = true
b = false
c = true

# TODO: Escribe tu código a continuación
# Usa los operadores lógicos escritos con palabras (and, or, not) para evaluar e imprimir cada expresión
# Cada resultado debe imprimirse en una línea distinta
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de Ruby online