Opérateurs logiques - Partie 2 (NOT)
Fait partie de la section Fondamentaux du Journey R de Coddy — leçon 18 sur 78.
L'opérateur NOT (!) inverse une valeur logique en son opposé. Il transforme TRUE en FALSE et FALSE en TRUE.
is_raining <- TRUE
!is_raining # FALSE
is_closed <- FALSE
!is_closed # TRUECet opérateur est utile lorsque vous voulez vérifier si quelque chose n'est pas le cas. Par exemple, au lieu de vérifier si un utilisateur est connecté, vous pourriez avoir besoin de vérifier s'il n'est pas connecté :
logged_in <- FALSE
if (!logged_in) {
# Afficher l'invite de connexion
}Vous pouvez combiner NOT avec les opérateurs AND et OR pour créer des conditions plus complexes :
has_ticket <- TRUE
is_vip <- FALSE
# Peut entrer s'il possède un ticket ET n'est PAS un VIP (entrée normale)
regular_entry <- has_ticket && !is_vip # TRUEVoici comment NOT transforme les valeurs logiques :
| A | !A |
|---|---|
| VRAI | FAUX |
| FAUX | VRAI |
Défi
FacileAppliquez l'opérateur NOT (!) pour inverser les valeurs logiques et combinez-le avec d'autres opérateurs logiques.
Les variables suivantes vous sont fournies :
is_raining <- TRUE
has_umbrella <- FALSE
is_weekend <- TRUE
has_homework <- TRUE
is_tired <- FALSEUtilisez l'opérateur NOT ainsi que les opérateurs AND et OR pour créer les variables suivantes :
- Créez une variable nommée
stay_dryqui stocke l'opposé deis_raining - Créez une variable nommée
will_get_wetqui stockeTRUEs'il pleut ET que la personne n'a PAS de parapluie (NOT) - Créez une variable nommée
can_relaxqui stockeTRUEsi c'est le week-end ET que la personne n'a PAS de devoirs (NOT) - Créez une variable nommée
should_go_outqui stockeTRUEs'il ne pleut PAS (NOT) OU si la personne a un parapluie - Créez une variable nommée
productive_dayqui stockeTRUEsi la personne n'est PAS fatiguée (NOT) ET que ce n'est PAS le week-end (NOT)
Utilisez la fonction print() pour afficher stay_dry, will_get_wet, can_relax, should_go_out et productive_day dans cet ordre exact.
Aide-mémoire
L'opérateur NOT (!) inverse une valeur logique en son opposé :
is_raining <- TRUE
!is_raining # FALSE
is_closed <- FALSE
!is_closed # TRUEUtilisez NOT pour vérifier si quelque chose n'est pas le cas :
logged_in <- FALSE
if (!logged_in) {
# Afficher l'invite de connexion
}Combinez NOT avec les opérateurs AND (&&) et OR (||) :
has_ticket <- TRUE
is_vip <- FALSE
regular_entry <- has_ticket && !is_vip # TRUE| A | !A |
|---|---|
| TRUE | FALSE |
| FALSE | TRUE |
Essayez vous-même
# Variables données
is_raining <- TRUE
has_umbrella <- FALSE
is_weekend <- TRUE
has_homework <- TRUE
is_tired <- FALSE
# TODO: Écrivez votre code ci-dessous
# Utilisez l'opérateur NON (!) avec les opérateurs ET (&) et OU (|)
# pour créer les variables requises
# 1. stay_dry - l'opposé de is_raining
# 2. will_get_wet - TRUE si il pleut ET NON a un parapluie
# 3. can_relax - TRUE si c'est le week-end ET NON a des devoirs
# 4. should_go_out - TRUE si il ne pleut PAS OU a un parapluie
# 5. productive_day - TRUE si NON fatigué ET NON week-end
# Afficher les résultats dans l'ordre
print(stay_dry)
print(will_get_wet)
print(can_relax)
print(should_go_out)
print(productive_day)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
4Opérateurs - Partie 2
Opérateurs logiques (AND, OR)Opérateurs logiques - Partie 2 (NOT)Récapitulatif - Logique simpleLogique vectorisée - Partie 1Logique vectorisée - Partie 27Calculateur de partage d'addition
Message de bienvenueRécupérer la saisie utilisateur10FizzBuzz avec une variante
Présentation du jeuLa fonction FizzBuzz2Variables et types de données
Type de données numériqueType de données entierType de données caractèreType de données logiqueVérification des types de donnéesConventions de nommageValeurs manquantes : NARécapitulatif - Création de variables8Boucles
Boucle ForBoucle WhileBreakSuivant (Continue)Récapitulatif - FactorielleGénération de séquences (seq, :)Boucles imbriquéesRécapitulatif - Saisie dynamique3Opérateurs, partie 1
Opérateurs arithmétiquesDivision entière et moduloOpérateurs d'affectationRécapitulatif - Mathématiques simplesOpérateurs de comparaison6Entrées/Sorties de base
Affichage avec PrintCat pour l'affichageAffichage avec des variablesLire l'entrée avec readline()Bases de la conversion de typesRécapitulatif - Calculateur d'âgeRécapitulatif - Vrai ou Faux9Fonctions
Déclarer une fonctionArguments de fonctionValeurs de retourRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs de paramètres par défaut