Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
gf_informatik:kara_maze [2026-06-15 13:26] – [Additum 2: Kompakte Lösungssprache] hofgf_informatik:kara_maze [2026-06-21 19:22] (aktuell) – [Additum 1a: Kara in der freien Wildbahn] hof
Zeile 172: Zeile 172:
 </kara-editor> </kara-editor>
 </html> </html>
 +## Additum 1: Kara in der freien Wildbahn
  
 +Kara steht diesmal mitten im offenen Feld — nicht an einer Aussenwand. Funktioniert der Pledge-Algorithmus aus Aufgabe 4 hier auch?
  
-## Additum 1: Kara in der freien Wildbahn+<html> 
 +<kara-editor step="200" timeout="60" id="open"> 
 +<kara-world> 
 +##############################L## 
 +#...............................# 
 +#...............................# 
 +#...............................# 
 +#............#######............# 
 +#............#.....#............# 
 +#............#.....#............# 
 +#............#.#.#.#............# 
 +#............###.###............# 
 +#...............................# 
 +#...............................# 
 +#...............................# 
 +#...........####.####...........# 
 +#...#####...#..#.#..#...#####...# 
 +#...#...#...#..#>#..#...#...#...# 
 +#...#..##...####.####...##..#...# 
 +#...#.......................#...# 
 +#...#..##...####.####...##..#...# 
 +#...#...#...#..#.#..#...#...#...# 
 +#...#####...#..#.#..#...#####...# 
 +#...........####.####...........# 
 +#...............................# 
 +#...............................# 
 +#...............................# 
 +#............###.###............# 
 +#............#.#.#.#............# 
 +#............#.....#............# 
 +#............#.....#............# 
 +#............#######............# 
 +#...............................# 
 +#...............................# 
 +#...............................# 
 +################################# 
 +</kara-world> 
 +</kara-editor> 
 +</html>
  
-Kara steht diesmal mitten im offenen Feld — nicht an einer Wand. Der Wandfolger-Algorithmus aus Aufgabe 3 funktioniert nur, wenn Kara bereits an einer Wand ist. 
  
-**Aufgabe:** Schreibe ein Programm in drei Phasen: +## Additum 2: Kompakte Lösungssprache
-  - **Phase 1:** Kara läuft geradeaus, bis er eine Wand erreicht +
-  - **Phase 2:** Kara dreht sich, damit die Wand auf einer Seite ist +
-  - **Phase 3:** Kara folgt der Wand bis zum Blatt (wie in Aufgabe 3)+
  
-<nodisp 2> +ZielDen Weg aus dem Labyrinth als kompakte Anweisung codierenBeispielDer String `'L---R-R--'` steht für "Links, 3x vorwärts, rechts, 1x vorwärts, rechts, 2x vorwärts".
-++++Tipp:+
-<code python> +
-# Phase 1: Wand suchen +
-while not kara.treeFront(): +
-    kara.move()+
  
-# Phase 2: Drehen (Wand soll links von Kara sein) +Schreibe einen Interpreter für die obige Anweisungssprache für Kara. Ein Interpreter ist eine Funktion, die einen String erhält und den Käfer entsprechend bewegt.
-kara.turnRight()+
  
-Phase 3: Wandfolger (aus Aufgabe 3 übernehmen) +Wie wärs mit einer noch kompakteren Sprache, z.B. `'L3R1R2'`? Was, wenn mehr als 9 Schritte gemacht werden sollen? 
-while not kara.onLeaf()+## Additum 3: Sokoban! 
-    ... + 
-</code> +Ziel: Aus dem Labyrinth finden (also auf das Blatt). Verschiebe Pilze, die im Weg sind...
-++++ +
-</nodisp>+
  
 <html> <html>
-<kara-editor step="200" timeout="60" id="open">+<kara-editor step="200" timeout="60" id="sokoban1">
 <kara-world> <kara-world>
 ####### #######
 #.....# #.....#
-#.>...#+#.>.#.# 
 +#....ML
 #.....# #.....#
 #.....# #.....#
-#....L# 
 ####### #######
 </kara-world> </kara-world>
 </kara-editor> </kara-editor>
 </html> </html>
-## Additum 2: Kompakte Lösungssprache 
  
-Ziel: Den Weg aus dem Labyrinth als kompakte Anweisung codieren. Beispiel: Der String `'L---R-R--'` steht für "Links, 3x vorwärts, rechts, 1x vorwärts, rechts, 2x vorwärts". 
  
-Schreibe einen Interpreter für die obige Anweisungssprache für KaraEin Interpreter ist eine Funktion, die einen String erhält und den Käfer entsprechend bewegt.+<html> 
 +<kara-editor step="200" timeout="60" id="sokoban2"> 
 +<kara-world> 
 +############# 
 +#>.M....##### 
 +####.######## 
 +####.######## 
 +####M######## 
 +####...M....# 
 +####.###.#### 
 +########.#### 
 +########.#### 
 +########L#### 
 +</kara-world> 
 +</kara-editor> 
 +</html> 
 + 
 + 
 +<html> 
 +<kara-editor step="200" timeout="60" id="sokoban3"> 
 +<kara-world> 
 +######### 
 +#>......# 
 +#...M...# 
 +####.#### 
 +####M### 
 +####.#### 
 +#.......# 
 +#.......# 
 +#.L.....# 
 +######### 
 +</kara-world> 
 +</kara-editor> 
 +</html> 
 + 
 + 
 +<html> 
 +<kara-editor step="200" timeout="60" id="sokoban4"> 
 +<kara-world> 
 +######### 
 +#>......# 
 +#.......# 
 +#..MM...# 
 +###.M#### 
 +#..M..### 
 +##.#..### 
 +##.###### 
 +#.......# 
 +#.......# 
 +#.L.....# 
 +######### 
 +</kara-world> 
 +</kara-editor> 
 +</html>
  
-Wie wärs mit einer noch kompakteren Sprache, z.B. `'L3R1R2'`? Was, wenn mehr als 9 Schritte gemacht werden sollen? 
  • gf_informatik/kara_maze.1781529994.txt.gz
  • Zuletzt geändert: 2026-06-15 13:26
  • von hof