Lorsque l'on souhaite écrire des algorithmes Il est important d'être capable de tester si une valeur est bien celle attendue. On va donc découvrir maintenant les conditions.
Les conditions s'écrivent de la manière suivante
if <boolean>
<code si vrai>
end
Si par exemple on souhaite afficher à l'utilisateur une phrase si un nombre est pair :
if var.even?
puts “Bravo !”
end
Il est aussi possible de mettre un code à exécuter si la condition n'est pas remplie
if <boolean>
<code si vrai>
else
<code si faux>
end
Enfin on est parfois amené à utiliser des conditions multiples
if <boolean>
<code si vrai>
elsif <condition>
<code si faux>
else
<code sinon>
end
Un des avantages de Ruby c'est que l'on a plusieurs possibilités lorsqu'il s'agit d'écrire ces conditions la. Par exemple on peut utiliser le mot-clé unless
pour inverser la condition
unless <boolean>
<code si faux>
else
<code si vrai>
end
On peut même écrire une condition à la fin d'une ligne pour n'exécuter le code que si la condition est remplie
<code> if <boolean>
puts “Bravo !” if variable.even?
Opérateur de comparaison
Parfois on souhaitera tester si une variable est bien celle attendue, ou faire une condition plus complexes. Dans ce cas là il faudra utiliser les opérateurs de comparaison
a == b # a égale à b
a >= b # a supérieur OU égal à b
a > b # a strictement supérieur à b
a <= b # a inférieur OU égal à b
a < b # a strictement inférieur à b
On pourra aussi utiliser les opérateurs booléens, qui nous permettront de combiner plusieurs conditions ensembles
# && ET
true && true # true
true && false # false
false && true # false
false && false # false
# || OU
true || true # true
true || false # true
false || true # true
false || false # false
# ! NON
!true # false
!false # true