conditionals.rb
con el siguiente contenido:"Hola mundo"
:"Hola mundo"
, no importa cuantas veces lo ejecutes.1 == 2
, 1 < 6
y 8 < 6
en la condición y fíjate que tenga sentido.number.rb
que le pida al usuario que ingrese un número e imprima "El número es menor a 10" solo si el número que ingresó el usuario es menor a 10:if
. Pero existen dos atajos que te van a permitir escribir código más corto.else
, que significa "de lo contrario" en Inglés. El else
nos permite definir el código que se debe ejecutar si el if
no se cumple, es decir si la condición evalúa a falso. La sintaxis es la siguiente:num
es menor a 10, o si es mayor o igual, con un else
."El número es menor a 10"
si el número es menor a 10."El número es mayor a 10"
si el número es mayor a 10."El número es igual a 10"
si el número es igual a 10."El número es menor a 10"
, "El número es mayor a 10"
y "El número es igual a 10"
respectivamente.elsif
, que significa "de lo contrario, si" en Inglés. La sintaxis es la siguiente:elsif
como desees. El else
es opcional.else if
:if
se cumple, el programa ejecuta el código que esté en ese bloque y después salta hasta después del else
para continuar con el resto del programa o terminar.if
no se cumple, pero la del elsif
sí se cumple, el programa ejecuta el código de ese bloque y salta hasta después del else
para continuar con el resto del programa o terminar.&&
) y ó (||
) para crear condiciones compuestas. El ejemplo anterior lo podemos mejorar con y:y
se representa con &&
. Lo que estamos diciendo con este código es: si el número es mayor o igual a 10 y menor o igual 20 entonces imprima "El número está entre 10 y 20". Fíjate que a cada lado del &&
hay una expresión que evalúa a verdadero o falso: num >= 10
y num <= 20
.||
. Imagina ahora que necesitamos escribir un programa que imprima "Excelente elección" cuando el valor de una variable sea "rojo" o "negro":true
o false
):true
false
1 < 1
2 != 3
1 < 1 && 2 != 3
1 < 1 && 2 != 3
. ¿Cómo podemos saber si es verdadera o falsa?1 < 1
es false
y 2 != 3
es true
. Quedaría:false && true
&&
) sea verdadera, cada lado tiene que ser verdadero. Sin embargo, podemos hacer una tabla con todas las combinaciones entre verdadero y falso para poder usarla como referencia más adelante:true && true
true
true && false
false
false && true
false
false && false
false
true
los dos lados del &&
deben ser true
.||
):true || true
true
true || false
true
false || true
true
false || false
false
true
para que el resultado sea true
.true
o false
. Primero reemplaza cada lado del &&
o el ||
y luego utiliza las tablas de verdad:"hola" == "hola" && 1 < 2
true && 5 != 5
1 == 1 || 2 != 1
!
). Por ejemplo:!true
es false
!false
es true
!(1 === 1)
!(2 <= 3)
!(true && 5 !== 5)
!(1 < 1 && 2 !== 3)
<
, >
, ===
, !==
etc).&&
y ||
que esten dentro de paréntesis.!
).&&
y ||
que falte.&&
y ||
que estén dentro de paréntesis:&&
y ||
que falte:true
o false
:!(5 === 5) && 8 !== 8
("gut" === "ikk" && 26 > 30) || ("gut" === "gut" && 26 > 10)
!("testing" == "testing" && !(5 > 8))
if
(sin else
o elsif
)?if
?else
?else
pueden existir en un condicional?elsif
pueden existir en un condicional?!(1 == 1)
?3 != 4 && !("pedro" === "juan" || 26 > 10)
?