L'opérateur 'or'
Fait partie de la section Fundamentals du Journey Lua de Coddy — leçon 21 sur 90.
L'opérateur logique <strong>or</strong> fonctionne différemment. Il renvoie true si au moins l'une des conditions est true, ce qui le rend parfait pour les situations où vous avez plusieurs façons de satisfaire une exigence.
Voici comment l'opérateur or fonctionne :
hasKey = true
hasPass = false
canOpenDoor = hasKey or hasPass
-- canOpenDoor est vrai car au moins une condition est vraieL'opérateur or suit cette règle simple : si la première condition est true, l'expression entière devient true sans vérifier la seconde condition. C'est seulement lorsque les deux conditions sont false que le résultat devient false.
playerGold = 50
playerLevel = 15
requiredGold = 100
requiredLevel = 20
canEnterZone = playerGold >= requiredGold or playerLevel >= requiredLevel
-- canEnterZone est faux car les deux conditions sont fausses (50 < 100 ET 15 < 20)Défi
FacileVérifiez si un joueur peut accéder à une zone secrète en vérifiant s'il possède soit une clé spéciale, soit un niveau d'accréditation suffisamment élevé. Créez une variable nommée hasSpecialKey et affectez-lui la valeur false. Créez une variable nommée clearanceLevel et affectez-lui la valeur 7. Créez une autre variable nommée requiredClearance et affectez-lui la valeur 5. Utilisez l'opérateur or pour vérifier si le joueur possède la clé spéciale ou s'il remplit la condition d'accréditation, en stockant le résultat dans une variable nommée canAccessArea. Affichez le résultat booléen.
Aide-mémoire
L'opérateur logique or renvoie true si au moins l'une des conditions est true :
hasKey = true
hasPass = false
canOpenDoor = hasKey or hasPass
-- canOpenDoor est true car au moins une condition est trueL'opérateur or renvoie true si la première condition est true sans vérifier la seconde condition. Le résultat ne devient false que lorsque les deux conditions sont false :
playerGold = 50
playerLevel = 15
requiredGold = 100
requiredLevel = 20
canEnterZone = playerGold >= requiredGold or playerLevel >= requiredLevel
-- canEnterZone est false car les deux conditions sont falseEssayez vous-même
-- Créer les variables comme spécifié dans le défi
-- À FAIRE : Écrivez votre code ici
-- Afficher le résultat
print(canAccessArea)Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fundamentals
4Opérateurs 2 : Relationnels et Logique
Opérateurs d'égalitéOpérateurs relationnelsL'opérateur 'and'L'opérateur 'or'L'opérateur 'not'Évaluation court-circuitValeurs Truthy et FalsyRécapitulatif - Logique simple7Logique conditionnelle de base
L'instruction if-thenL'instruction if-then-elseL'instruction elseifRécapitulatif - Le coffre au trésor10Tables Partie 1 : Style Liste
Qu'est-ce qu'une Table ?Créer une TableAccéder aux éléments par indexModifier des éléments par indexL'opérateur de longueur '#'table.insert()table.remove()Récapitulatif - Gérer les membres du groupe13Projet : Boutique de potions simple
Configuration du projetAjouter une potion2Variables et types de données
Qu'est-ce qu'une variable ?Les nombresLes chaînes de caractèresLes booléensLa valeur 'nil'La fonction type()Conventions de nommageRécapitulatif - Profil de personnage5Affichage de base
Afficher des littérauxAfficher des variablesAfficher plusieurs valeursCombiner des chaînes et des variablesLa fonction tostring()EntréeLe CastRécapitulatif - Rapport d'étatRécapitulatif - Jusqu'à 1208Bases de la manipulation de chaînes
string.len()string.upper et string.lowerstring.sub()string.rep()string.find()Récapitulatif - Formater le nom d'utilisateur3Opérateurs 1 Arithmétique & Conc.
Opérateurs arithmétiquesOpérateur moduloOpérateur d'exponentiationConcaténation de chaînesPriorité des opérateursRécapitulatif - Calculs simples6Projet : Affichage des stats du personnage
Message de bienvenueDéclarer les statistiques du personnage9Bases des fonctions
Déclarer une fonctionAppeler une fonctionFonctions avec paramètresFonctions avec plusieurs paramètresL'instruction 'return'Récapitulatif - Calculateur d'aire