Skip to content

Wahrheitswerte (bool)

Programmieren

Der Datentyp «Wahrheitswert» kennt nur zwei Zustände: Wahr oder Falsch, auf Englisch True oder False. Dieser Wert lässt sich in einem Bit speichern als 1 oder 0.

Werte

Wahrheitswerte können direkt gesetzt werden:

python
a = True
b = False
print(a, b)

Vergleiche

Wenn man Zahlen oder Text mit <, >, <=, >=, == oder != vergleicht, dann ist das Ergebnis ein Wahrheitswert. Häufig verwendet man das in if- oder while-Strukturen.

python
print(4 < 5)
print("a" < "b")
print(0 >= 17)

Unterprogramme

Man kann auch relativ einfach ein Unterprogramm schreiben, welches einen Wahrheitswert zurückliefert.

python
import math

def ist_quadratzahl(x):
    wurzel = math.sqrt(x)
    gerundet = round(wurzel)
    return wurzel == gerundet

print(ist_quadratzahl(9))
print(ist_quadratzahl(19))

Aufgabe: Quadratzahl

Teste das obenstehende Beispiel aus:

  • was geschieht?
  • wie wird das Ergebnis berechnet?

Operatoren

Mit den logischen Operatoren können zwei Wahrheitswerte miteinander verknüpft werden. Das Ergebnis ist wieder ein Wahrheitswert. Man kann mit diesen Wahrheitswerten «rechnen».

Logische Operatoren für Wahrheitswerte
OperandOperationBemerkung
andlogisches ANDnur True, falls a und b True
orlogisches ORTrue, wenn mindestens a oder b True
notInverter/Negationaus True wird False, und umgekehrt

AND (logisches UND)

Wenn es regnet und kalt ist, kann die Strasse gefrieren.

aba and b
FalseFalseFalse
FalseTrueFalse
TrueFalseFalse
TrueTrueTrue
python
a = False
b = True
ergebnis = a and b
print(ergebnis)
python
print(False and False)
print(False and True)
print(True and False)
print(True and True)

OR (logisches ODER)

Wenn es regnet oder schneit, nehme ich einen Schirm mit.

aba or b
FalseFalseFalse
FalseTrueTrue
TrueFalseTrue
TrueTrueTrue
python
a = False
b = True
ergebnis = a or b
print(ergebnis)
python
print(False or False)
print(False or True)
print(True or False)
print(True or True)

NOT (logische Negation)

Wenn es nicht regnet, lasse ich den Schirm zu Hause

no ist ein Spezialfall – und zwar weil not nur aus einem Wahrheitswert einen Neuen berechnet:

anot a
FalseTrue
TrueFalse
python
a = False
ergebnis = not a
print(ergebnis)
python
print(not False)
print(not True)

Gymnasium Kirchenfeld, fts