Lernpfad:Lerntheke Marsrover/22
Bedingungen in Java sind Ausdrücke, die entweder wahr (true
) oder falsch (false
). true
und false
nennt man Wahrheitswerte. Sie werden in Java mit dem Schlüsselwort boolean
gekennzeichnet.
Anfragen wie gesteinVorhanden()
führen einen Test durch, der am Ende aber auch wahr oder falsch ist, also auch zu einem Wahrheitswert wird.
Einzelne Wahrheitswerte oder Anfragen, die zu einem Wahrheitswert werden, können mittels logischer Operatoren zu größeren Ausdrücken verknüpft werden. Zum Beispiel könnten die Anfragen gesteinVorhanden()
und markeVorhanden()
kombiniert werden zu !gesteinVorhanden() && markeVohanden()
, was soviel bedeutet wie "ist kein Gestein vorhanden und ist eine Marke vorhanden?".
In Java gibt es folgende logische Verknüpfungen:
Art | Syntax | Bespiel | Beschreibung |
---|---|---|---|
UND | && |
gesteinVorhanden() && markeVohanden() |
Ist wahr, wenn die Ausdrücke links und rechts wahr sind. |
ODER | || |
gesteinVorhanden() | markeVohanden() |
Ist wahr, wenn mindestens einer der Ausdrücke links und rechts wahr ist. |
NICHT | ! |
!gesteinVorhanden() |
Ist wahr, wenn der Ausdruck falsch ist. Dreht den Wahrheitswert um. |
Du kennst logische Verknüpfungen vielleicht schon von logischen Schaltungen (bzw. digitalen Schaltungen). Die Wahrheitstafeln der UND-Verknüpfung (&&
) und des UND-Gatters sind zum Beispiel genau identisch.
Wie auch bei den Schaltungen lassen sich mit den drei Basisverknüpfungen UND, ODER und NICHT komplexe Anfragen programmieren.
Bearbeite das Arbeitsblatt zu Wahrheitswerten.
- Programmiere den Rover so, dass er auf der Karte unten alle Steine analysiert, die auf einem Feld mit einer Marke liegen.
".\n.\n.\n.\n...R..G(GM)GM(GM).M(GM)"
- Implementiere eine Anfrage
public boolean huegelRechtsLinks()
, dietrue
zurück gibt, wenn sich links und rechts vom Rover ein Hügel befindet. - Benutze die Anfrage, um den Rover auf der Karte unten alle Steine sammeln zu lassen, die zwischen zwei Hügeln liegen.
".\n.\n.\n.\n......H[.H][.H].HH[.H]H\n...R..G[.G][.G].[.G].GM\n......[.H][.H].H[.H][.H]HH"
Das ist Greenfoot | Der Mars-Rover | Die Welt des Mars-Rover | Das ist Java | Die Rover-Arena | Greenfoot benutzen | Java Syntax | Variablen | Methoden | Bedingte Anweisungen | Schleifen | Objekte | Arrays | Die Fähigkeiten des Rovers | Steine analysieren I | Steine analysieren II | Strukturiertes programmieren | Programme strukturieren I | Programme strukturieren II | Fallunterscheidungen I | Anfragen | Fallunterscheidungen II | Variablen | Objektvariablen | Wiederholungen I | Wiederholungen II | Rover-Liebe | Steine analysieren III | Gefangen im Labyrinth I | Marken-Maler | Fleißige Rover | Gefangen im Labyrinth II | In der Rover-Arena | Parameter