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.
Desafío
FácilSe te proporcionan las siguientes variables:
a = true
b = false
c = trueUsa los operadores lógicos basados en palabras (and, or, not) para evaluar y mostrar las siguientes expresiones, cada una en una línea aparte:
a and ba or bnot ba and cb or cnot 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 distintaEsta 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 Parte 1Operadores lógicos Parte 2Repaso - Lógica simpleOperadores lógicos Parte 3Operadores lógicos Parte 47Calculadora para dividir la cuenta
Mensaje de bienvenidaObtener la entrada del usuario10FizzBuzz con un giro
Descripción general del juegoEl método FizzBuzz2Variables y tipos de datos
Números y variablesTipo de dato StringTipo de dato BooleanTipo de dato SymbolComprobación de tipos de datosConvenciones de nomenclaturaResumen: Creación de variables5Toma de decisiones
Sentencia IfIf - ElseRepaso - Calculadora simpleIf - Else anidadosSentencia Unless8Bucles
Bucle For con rangosBucle WhileBreakNextRepaso - FactorialBucle TimesBucle UntilBucles anidadosRepaso - Entrada dinámica3Operadores Parte 1
Operadores aritméticosOperador móduloAtajos aritméticosResumen - Matemáticas simplesOperadores de comparación6Entrada y Salida Básica
Salida con putsSalida con print y pSalida con variablesEntrada con getsMétodo chompConversión de tiposResumen - Calculadora de edadResumen - Verdadero o falsoPractica por tu cuenta: Compilador de Ruby online