Logische Operatoren
Teil des Abschnitts Grundlagen der Solidity-Journey von Coddy. Lektion 17 von 53.
Verknüpfe boolesche Bedingungen mit && für AND und || für OR. AND benötigt, dass beide Seiten wahr sind. OR benötigt, dass mindestens eine Seite wahr ist. Setze ! vor einen booleschen Wert, um ihn umzukehren. Klammern erleichtern das Lesen gruppierter Vergleiche.
Die Anweisungen in diesem Auszug werden innerhalb der bereitgestellten main-Funktion ausgeführt.
bool hasPass = true;
bool paused = false;
console.log(hasPass && !paused);Der pass ist vorhanden und das Pausen-Flag ist false, daher sind beide Anforderungen erfüllt, nachdem paused negiert wurde. AND und OR verwenden eine Kurzschlussauswertung: Die rechte Seite wird nur ausgewertet, wenn sie das Ergebnis ändern kann.
AND erfordert beide Bedingungen; OR erfordert mindestens eine Bedingung.
Aufgabe
EinfachEin Besucher darf nur eintreten, wenn ticket true und closed false ist. Gib aus, ob der Eintritt erlaubt ist.
Die Tests übergeben die Argumente in dieser Reihenfolge an main: bool ticket, bool closed. Jeder Test beginnt mit einem neuen Vertragszustand.
Verwende console.log für die angeforderte Ausgabe. Gib nur die angeforderten Werte aus, einen pro Zeile, ohne zusätzliche Bezeichnungen, sofern die Aufgabe diese nicht vorgibt.
Probier es selbst
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(bool ticket, bool closed) external view {
// Schreibe deine Lösung hier.
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
2Variablen und Datentypen
Vorzeichenlose GanzzahlenEingaben und AusgabenVorzeichenbehaftete GanzzahlenBoolesche WerteStrings im SpeicherProfilkarte5Funktionen
FunktionsparameterRückgabewerteReine FunktionenHilfsaufrufeWiederverwendbare BerechnungenÜbe selbstständig: Solidity-Playground