Opérateurs logiques
Fait partie de la section Fondamentaux du Journey Solidity de Coddy. Leçon 17 sur 53.
Combinez les conditions booléennes avec && pour AND et || pour OR. AND nécessite que les deux côtés soient vrais. OR nécessite qu’au moins un côté soit vrai. Placez ! avant un booléen pour l’inverser. Les parenthèses rendent les comparaisons regroupées plus faciles à lire.
Les instructions de cet extrait s’exécutent à l’intérieur de la fonction main fournie.
bool hasPass = true;
bool paused = false;
console.log(hasPass && !paused);Le mot de passe est présent et l’indicateur de pause est faux, les deux exigences sont donc satisfaites après avoir nié paused. AND et OR s’évaluent en court-circuit : le côté droit est évalué uniquement lorsqu’il peut modifier le résultat.
AND exige que les deux conditions soient remplies ; OR exige qu’au moins une condition soit remplie.
Défi
FacileUn visiteur ne peut entrer que lorsque ticket est true et que closed est false. Affichez si l’entrée est autorisée.
Les tests transmettent les arguments à main dans cet ordre : bool ticket, bool closed. Chaque test commence avec un état de contrat vierge.
Utilisez console.log pour la sortie demandée. Affichez uniquement les valeurs demandées, une par ligne, sans libellés supplémentaires sauf si la tâche les précise.
Essayez vous-même
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(bool ticket, bool closed) external view {
// Écrivez votre solution ici.
}
}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
2Variables et types
Entiers non signésEntrées et sortiesEntiers signésValeurs booléennesChaînes en mémoireCarte de profil5Fonctions
Paramètres des fonctionsValeurs de retourFonctions puresAppels de fonctions auxiliairesCalculs réutilisablesEntraînez-vous par vous-même : Playground Solidity