Menu
CoddyTech

Opérateurs logiques, partie 3

Fait partie de la section Fondamentaux du Journey Ruby de Coddy. Leçon 19 sur 88.

Ruby propose également des équivalents en toutes lettres pour les opérateurs logiques : and, or et not. Ils fonctionnent de manière similaire à &&, || et !, mais avec une différence importante : leur priorité est plus faible.

true and false   # false (équivalent à &&)
true or false    # true (équivalent à ||)
not true         # false (équivalent à !)

La priorité plus faible signifie que ces opérateurs sont évalués après l’affectation. Cela peut entraîner un comportement inattendu :

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

Dans le deuxième exemple, l’affectation a lieu en premier (result = true), puis and false est évalué, mais son résultat est ignoré. C’est pourquoi la plupart des développeurs Ruby préfèrent &&, || et ! pour les conditions.

La même chose se produit avec puts : puts true and false affiche true, car puts true s’exécute en premier. Pour afficher le résultat d’un opérateur exprimé par un mot, entoure l’expression de ses propres parenthèses : puts((true and false)) affiche false.

Les versions en toutes lettres sont généralement réservées aux situations de flux de contrôle, que tu rencontreras plus tard. Pour l’instant, utilise les opérateurs symboliques (&&, ||, !) lorsque tu écris des conditions afin d’éviter les surprises.

challenge icon

Défi

Facile

Les variables suivantes vous sont fournies :

a = true
b = false
c = true

Utilisez les opérateurs logiques sous forme de mots (and, or, not) pour évaluer et afficher les expressions suivantes, chacune sur une ligne distincte :

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

Entourez chaque expression de ses propres parenthèses lors de son affichage, par exemple puts((true and false)).

Chaque résultat doit être soit true, soit false.

Essayez vous-même

# Les variables sont fournies pour vous
a = true
b = false
c = true

# TODO: Écrivez votre code ci-dessous
# Utilisez les opérateurs logiques écrits en toutes lettres (and, or, not) pour évaluer et afficher chaque expression
# Chaque résultat doit être affiché sur une ligne distincte
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Compilateur Ruby en ligne