Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
| gf_informatik:karatutorial:logik [2026-08-28 12:47] – [Aufgabe Logik] hof | gf_informatik:karatutorial:logik [2026-08-30 19:43] (aktuell) – [Präzedenz (Operatorrangfolge)] hof | ||
|---|---|---|---|
| Zeile 10: | Zeile 10: | ||
| Die Funktion `kara.treeFront()` gibt einen _Wahrheitswert_ zurück: Entweder wahr oder falsch, in Python `True` oder `False`. Kara soll solange weiterlaufen, | Die Funktion `kara.treeFront()` gibt einen _Wahrheitswert_ zurück: Entweder wahr oder falsch, in Python `True` oder `False`. Kara soll solange weiterlaufen, | ||
| - | In der Informatik nennen wir einen Wahrheitswert auch [[wpde> | + | In der Informatik nennen wir einen Wahrheitswert auch [[wpde> |
| ### Konjunktion (Und-Verknüpfung) | ### Konjunktion (Und-Verknüpfung) | ||
| - | Betrachte folgendes Beispiel: Kara soll immer dann ein neues Blatt legen, wenn rechts von ihr ein Baum steht **und** noch keines vorhanden ist: | + | Betrachte folgendes Beispiel: Kara soll immer dann ein neues Blatt legen, wenn noch keins vorhanden ist **und** |
| < | < | ||
| Zeile 34: | Zeile 34: | ||
| **Merke**: | **Merke**: | ||
| - | * mit dem Schlüsselwort `and` können | + | * mit dem Schlüsselwort `and` können |
| * Eine Und-Verknüpfung heisst **[[wpde> | * Eine Und-Verknüpfung heisst **[[wpde> | ||
| * mit `kara.treeRight()` und `kara.treeLeft()` können wir Bäume neben Kara feststellen. | * mit `kara.treeRight()` und `kara.treeLeft()` können wir Bäume neben Kara feststellen. | ||
| * `not` bindet enger als `and`: das `not kara.onLeaf()` negiert nur die Blatt-Bedingung, | * `not` bindet enger als `and`: das `not kara.onLeaf()` negiert nur die Blatt-Bedingung, | ||
| - | #### Aufgabe Tunnel | + | #### Aufgabe |
| Hilf Kara, den Tunnel zu markieren. Schreibe Python-Code wie folgt: | Hilf Kara, den Tunnel zu markieren. Schreibe Python-Code wie folgt: | ||
| Zeile 69: | Zeile 69: | ||
| </ | </ | ||
| </ | </ | ||
| - | |||
| ### Disjunktion (Oder-Verknüpfung) | ### Disjunktion (Oder-Verknüpfung) | ||
| - | Natürlich | + | Wir können auch zwei Booleans so verknüpfen, |
| + | #### Aufgabe D2: Tunnelräumung | ||
| Schreibe Code, der immer dann ein Blatt entfernt, wenn links oder rechts von Kara ein Baum steht. Stoppe, wenn du einen Baum vor dir hast. | Schreibe Code, der immer dann ein Blatt entfernt, wenn links oder rechts von Kara ein Baum steht. Stoppe, wenn du einen Baum vor dir hast. | ||
| Zeile 102: | Zeile 102: | ||
| - Disjunktion (`or`) | - Disjunktion (`or`) | ||
| - | Im Beispiel: | + | Im Beispiel |
| * beim ersten Blatt dreht Kara links (die erste Hälfte der Disjunktion ist wahr: beide Bedingungen `kara.onLeaf() and not kara.treeLeft()` sind wahr). | * beim ersten Blatt dreht Kara links (die erste Hälfte der Disjunktion ist wahr: beide Bedingungen `kara.onLeaf() and not kara.treeLeft()` sind wahr). | ||
| * beim Pilz dreht Kara ebenso links (die zweite Hälftet der Disjunktion ist wahr: `kara.mushroomFront()`). | * beim Pilz dreht Kara ebenso links (die zweite Hälftet der Disjunktion ist wahr: `kara.mushroomFront()`). | ||
| Zeile 130: | Zeile 130: | ||
| kara.move() | kara.move() | ||
| </ | </ | ||
| - | #### Aufgabe | + | |
| + | |||
| + | #### Aufgabe | ||
| Betrachte folgenden Code und Karas Welt! Auf welchem Feld wird Kara am Ende des Programms sein? | Betrachte folgenden Code und Karas Welt! Auf welchem Feld wird Kara am Ende des Programms sein? | ||
| Zeile 184: | Zeile 186: | ||
| </ | </ | ||
| - | #### Aufgabe Blätter um die Bäume | + | #### Aufgabe |
| Schreibe Python-Code, | Schreibe Python-Code, | ||
| * Kara macht die folgenden Schritte, solange kein Pilz vor ihr steht: | * Kara macht die folgenden Schritte, solange kein Pilz vor ihr steht: | ||
| Zeile 193: | Zeile 195: | ||
| * andernfalls: | * andernfalls: | ||
| - | < | + | < |
| < | < | ||
| | | ||
| T M TTT TT | T M TTT TT | ||
| T > | T > | ||
| - | | + | |
| - | TTT TT LT | + | |
| | | ||
| | | ||
| Zeile 220: | Zeile 222: | ||
| | | ||
| T M TTT TT | T M TTT TT | ||
| - | | + | |
| - | | + | |
| - | TTT TT LT | + | TTLTTT |
| - | TTL LL LT | + | TTLLLL |
| TTL MT TT | TTL MT TT | ||
| | | ||
| | | ||
| - | | + | |
| | | ||
| </ | </ | ||