Menu
Coddy logo textTech

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 proporciona alternativas basadas en palabras para los operadores lógicos: and, or y not. Estos funcionan de manera similar a &&, || y !, pero con una diferencia importante: tienen una precedencia menor.

true and false   # false (lo mismo que &&)
true or false    # true (lo mismo que ||)
not true         # false (lo mismo 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 ocurre primero (result = true), luego and false se evalúa pero su resultado se descarta. Es por esto que la mayoría de los desarrolladores de Ruby prefieren &&, ||, y ! para las condiciones.

Las versiones de palabras suelen estar reservadas para situaciones de flujo de control, que encontrarás más adelante. Por ahora, limítate a 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

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

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

Cada salida debe ser true o false.

Hoja de referencia

Ruby proporciona alternativas basadas en palabras para los operadores lógicos: and, or y not. Estos funcionan de manera similar a &&, || y !, pero con una precedencia menor.

true and false   # false
true or false    # true
not true         # false

La menor precedencia significa que estos operadores se evalúan después de la asignación, lo que puede llevar a un comportamiento inesperado:

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

En el segundo ejemplo, la asignación ocurre primero (result = true), luego se evalúa and false pero su resultado se descarta.

La mayoría de los desarrolladores de Ruby prefieren &&, || y ! para las condiciones para evitar sorpresas. Las versiones de palabras se reservan típicamente para situaciones de flujo de control.

Pruébalo tú mismo

# Las variables se proporcionan para ti
a = true
b = false
c = true

# TODO: Escribe tu código a continuación
# Usa los operadores lógicos basados en palabras (and, or, not) para evaluar e imprimir cada expresión
# Cada resultado debe imprimirse en una línea separada
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