Logische Operatoren Teil 3
Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy. Lektion 19 von 88.
Ruby bietet außerdem wortbasierte Alternativen für logische Operatoren: and, or und not. Diese funktionieren ähnlich wie &&, || und !, haben aber einen wichtigen Unterschied: Sie haben eine niedrigere Priorität.
true and false # false (entspricht &&)
true or false # true (entspricht ||)
not true # false (entspricht !)Die niedrigere Priorität bedeutet, dass diese Operatoren nach der Zuweisung ausgewertet werden. Das kann zu unerwartetem Verhalten führen:
result = true && false # result ist false
result = true and false # result ist true!Im zweiten Beispiel erfolgt zuerst die Zuweisung (result = true), dann wird and false ausgewertet, aber das Ergebnis wird verworfen. Deshalb bevorzugen die meisten Ruby-Entwickler &&, || und ! für Bedingungen.
Dasselbe passiert mit puts: puts true and false gibt true aus, weil zuerst puts true ausgeführt wird. Um das Ergebnis eines Wortoperators auszugeben, setze den Ausdruck in eigene Klammern: puts((true and false)) gibt false aus.
Die Wortversionen sind normalerweise für Situationen mit Kontrollfluss reserviert, denen du später begegnen wirst. Verwende vorerst beim Schreiben von Bedingungen die Symboloperatoren (&&, ||, !), um Überraschungen zu vermeiden.
Aufgabe
EinfachDir werden die folgenden Variablen bereitgestellt:
a = true
b = false
c = trueVerwende die wortbasierten logischen Operatoren (and, or, not), um die folgenden Ausdrücke auszuwerten und auszugeben, jeweils in einer eigenen Zeile:
a and ba or bnot ba and cb or cnot a
Setze jeden Ausdruck beim Ausgeben in eigene Klammern, zum Beispiel puts((true and false)).
Jede Ausgabe sollte entweder true oder false sein.
Probier es selbst
# Die Variablen sind für dich vorgegeben
a = true
b = false
c = true
# TODO: Schreibe deinen Code unten
# Verwende die logischen Operatoren in Wortform (and, or, not), um jeden Ausdruck auszuwerten und auszugeben
# Jedes Ergebnis sollte in einer eigenen Zeile ausgegeben werdenDiese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3Logische Operatoren Teil 47Rechner zum Aufteilen der Rechnung
WillkommensnachrichtBenutzereingaben erfassen10FizzBuzz mit einer Wendung
SpielübersichtDie FizzBuzz-Methode13Arrays für Fortgeschrittene
Array-Slicing mit BereichenArray-Slicing mit IndizesArray-OperatorenInclude?-Methode2Variablen und Datentypen
Zahlen und VariablenString-DatentypBoolean-DatentypSymbol-DatentypDatentypen überprüfenNamenskonventionenWiederholung – Variablen erstellen5Entscheidungsfindung
If-AnweisungIf - ElseRückblick – Einfacher TaschenrechnerVerschachteltes If - ElseUnless-Anweisung8Schleifen
For-Schleife mit BereichenWhile-SchleifeBreakNextRückblick – FakultätTimes-SchleifeUntil-SchleifeVerschachtelte SchleifenRückblick – Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische KurzschreibweisenRückblick – Einfache MathematikVergleichsoperatoren6Grundlegende Ein- und Ausgabe
Ausgabe mit putsAusgabe mit print und pAusgabe mit VariablenEingabe mit getsDie chomp-MethodeTypumwandlungWiederholung – AltersrechnerWiederholung – Wahr oder FalschÜbe selbstständig: Online-Ruby-Compiler