# Theorie II: Bedingungen (Arbeitsblatt)

Lesen Sie folgende Information und schreiben Sie sie in Ihr Heft.

## Logische Ausdrücke

**Logische Ausdrücke** sind arithmetischen Ausdrücken sehr ähnlich. Der entscheidende Unterschied ist, dass logische Ausdrücke als Wert vom Datentyp ein **boolean** sind. D.h. der Wert ist immer entweder `true` oder `false`.

### Aufgabe 1:

Geben sie im Terminal `python` ein, um die interaktive Python Konsole zu starten.

Geben Sie dann nacheinander folgende Befehle (und ignorieren Sie erstmal die Ausgabe) ein:

1. `5==4`
1. `4!=5`
1. `x=True`
1. `x`
1. `y=4!=5`
1. `y`
1. `z=x and y`
1. `z`
1. `a = z or 4==5`
1. `a`

Schauen Sie sich nun die Ausgabe an.

* Erläutern Sie kurz (schriftlich), was `==` bedeutet.
* Erläutern Sie, was `!=` bedeutet.
* Erläutern Sie unter Verwendung von Fachbegriffen, was in Zeile 3 und 5 passiert.
* Erläutern Sie die Bedeutung von `and`
* Erläutern Sie die Bedeutung von `or`
 
Lesen Sie folgende Information und schreiben Sie sie in Ihr Heft:

Eine **bedingte Anweisung** ist wie folgt aufgebaut:

```python
if BEDINGUNG:
    CODE_1 
```

Eine **bedingte Verzweigung** ist wie folgt aufgebaut:

```python
if BEDINGUNG:
    CODE_1
else:
    CODE_2
```

(Hinweis: Eine Bedingung ist ein logischer Ausdruck!)

### Aufgabe 2:

* Listen Sie alle Schüsselwörter auf, die bei einer bedingten Anweisung verwendet werden müssen. *Hinweis: Hier ist das Schlüsselwort, das Wort, an dem Python erkennt, dass es sich um eine bedingte Anweisung handelt.*
* Listen Sie alle Schüsselwörter auf, die bei einer bedingten Verzweigung verwendet werden müssen.
* Erläutern Sie, was eintreten muss, damit bei einer bedingten Anweisung der Block CODE_1 ausgeführt wird.
* Erläutern Sie, was eintreten muss, damit bei einer bedingten Verzweigung der Block CODE_2 ausgeführt wird.
 

### Aufgabe 3:

Zurück zum Spiel. Überlegen Sie sich, wie Sie eine Bedingung einbauen können und machen Sie das.

Beispiele, wenn Sie keine eigene Idee haben:

* Arbeit in der Methode Tastegedrückt: Bei Eingabe einer bestimmten Taste taucht ein Fuchs auf, beim Drücken einer anderen Taste erscheint eine andere Figur.
* Arbeit in der Methode Anfangszustand: 10 Füchse werden an zufälligen Positionen auf das Spielfeld gesetzt. Wenn auf dieser Position schon ein Hase ist, werden sie dort nicht hingesetzt. 

Hinweis: Der Befehl `random.randint(1,6)` liefert eine Zufallszahl zwischen 1 und 6. Dafür müssen Sie in der Datei `meinspiel.py` in Zeile 1 `import random` ergänzen.

 
