Wahrheitswerte Flashcards
Boolesche Funktionen; der Typ ππππ; logische und relationale Operatoren; Kurzschlussauswertung
Was reprΓ€sentiert der Typ ππππ und was ist sein Wertebereich?
Der Typ ππππ reprΓ€sentiert Wahrheitswerte. Sein Wertebereich ist {πππππ, ππππ} bzw. {0, π·}.
Was sind relationale Operatoren, was fΓΌr Werte geben sie aus und welche Operatoren gibt es?
Relationale Operatoren vergleichen verschiedene R-Werte und geben einen R-Wert des Typs ππππ zurΓΌck. Es gibt: (In Klammer jeweils: Stelligkeit, PrΓ€zedenz, Ass.)
- kleiner < (2, 11, l)
- grΓΆsser > (2, 11, l)
- kleiner gleich <= (2, 11, l)
- grΓΆsser gleich >= (2, 11, l)
- gleich == (2, 10, l)
- ungleich != (2, 10, l)
Was ist eine Boolesche Funktion?
Eine Funktion f: {0, 1}Β² β {0, 1}, die fΓΌr logische Operationen einen Wahrheitswert ausgibt.
Welche logischen Operatoren existieren und welches ist ihre C++-Syntax?
Es gibt: (In Klammer jeweils: Stelligkeit, PrΓ€zedenz, Ass.) - Logisches βUndβ: π && π (2, 6, l)
- Logisches βOderβ: π || π (2, 5, l)
- Logisches βNichtβ: !π (1, 16, r)
Wie werden logische, arithmetische und relationale Operatoren gebunden in Anbetracht ihrer PrΓ€zedenzen?
- UnΓ€re logische Operatoren (z.B. βnichtβ)
- BinΓ€re arithmetische Operatoren (z.B. β5 + bβ)
- Relationale Operatoren (z.B. βkleiner alsβ)
- BinΓ€re logische Operatoren (z.B. βoderβ)
Wie wird der folgende Ausdruck geklammert?
π½ + π‘ < π’ && π’ != πΉ * π£ || !π
(((π½ + π‘) < π’) && (π’ != (πΉ * π£))) || (!π)
Es gibt auch logische Operationen, die aus den drei grundlegenden Booleschen Funktionen kombiniert werden kΓΆnnen, z.B. das βexklusive Oderβ. Wie wird es konstruiert?
XOR(x, y) = UND(ODER(x, y), NICHT(UND(x, y))).
oder in C++:
π‘ || π’) && !(π‘ && π’
Wie werden die Typen ππππ und πππ jeweils in den anderen Typen kombiniert?
Von ππππ β πππ:
ππππ β π·
πππππ β 0
Von πππ β ππππ:
β 0 β ππππ
0 β πππππ
Welches sind die beiden DeMorganschen Regeln?
(1) !(π && π) == (!π || !π)
2) !(π || π) == (!π && !π
Was bedeutet die sogenannte Kurzschlussauswertung?
Falls Aufgrund der LinksprΓ€zedenz der beiden binΓ€ren logischen Operatoren das Ergebnis schon feststeht, wird der rechte Teil nicht mehr ausgewertet.
Zum Beispiel fΓΌr π‘ == πΉ ist der Ausdruck
π‘ != πΉ && π‘ / πΉ > (π’ || π£) schon nach π‘ != πΉ falsch und der rechte Teil wird ΓΌbersprungen.