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:karatutorial:labyrinthe [2026-08-14 15:19] – [Aufgabe 9] hofgf_informatik:karatutorial:labyrinthe [2026-09-03 14:07] (aktuell) – [Labyrinthe] hof
Zeile 1: Zeile 1:
-## Labyrinthe+## Labyrinthe (Bonus)
 Mit unserem Wissen über Schleifen und Verzweigungen können wir bereits aus einem einfachen Labyrinth finden. Mit unserem Wissen über Schleifen und Verzweigungen können wir bereits aus einem einfachen Labyrinth finden.
  
-### Aufgabe 7+### Aufgabe L1
 Schreibe möglichst kompakten Code, der aus dem Labyrinth findet. Schau falls nötig bei [[.:loops]] oder [[.:verzweigungen]] nach, wie diese im Code umgesetzt werden. Schreibe möglichst kompakten Code, der aus dem Labyrinth findet. Schau falls nötig bei [[.:loops]] oder [[.:verzweigungen]] nach, wie diese im Code umgesetzt werden.
  
-<kara-editor id="a7">+<kara-exercise id="L1">
 <kara-world> <kara-world>
    TTTTTTTTT    TTTTTTTTT
Zeile 17: Zeile 17:
    TTTTTTTTT    TTTTTTTTT
 </kara-world> </kara-world>
-</kara-editor> +<kara-solution>
- +
-++++Mögliche Lösung 7| +
-<code python>+
 while not kara.mushroomFront(): while not kara.mushroomFront():
     if kara.treeFront():     if kara.treeFront():
Zeile 26: Zeile 23:
     else:     else:
         kara.move()         kara.move()
-</code+</kara-solution
-+++++</kara-exercise>
  
-### Aufgabe 8+### Aufgabe L2
 Schwieriger wird es, wenn je nach Situation nach links statt nach rechts gewendet werden soll. Wie wird sich Kara mit dem Code von Aufgabe 7 bewegen? Findet Kara zum Pilz? Was musst du ändern, um ins Ziel zu kommen? Denk dran, dass sich Verzweigungen (`if`) und Schleifen (`while`) beliebig ineinander verschachteln lassen! Schwieriger wird es, wenn je nach Situation nach links statt nach rechts gewendet werden soll. Wie wird sich Kara mit dem Code von Aufgabe 7 bewegen? Findet Kara zum Pilz? Was musst du ändern, um ins Ziel zu kommen? Denk dran, dass sich Verzweigungen (`if`) und Schleifen (`while`) beliebig ineinander verschachteln lassen!
  
-<kara-editor id="a8">+<kara-exercise id="L2">
 # Lösung von Aufgabe 7 - was passiert? # Lösung von Aufgabe 7 - was passiert?
 while not kara.mushroomFront(): while not kara.mushroomFront():
Zeile 50: Zeile 47:
    TTTTTTTTT    TTTTTTTTT
 </kara-world> </kara-world>
-</kara-editor> +<kara-solution>
- +
-++++Mögliche Lösung 8| +
-<code python>+
 while not kara.mushroomFront(): while not kara.mushroomFront():
     if kara.treeFront():     if kara.treeFront():
Zeile 63: Zeile 57:
     else:     else:
         kara.move()         kara.move()
-</code+</kara-solution
-+++++</kara-exercise>
  
 ### Mehr Bedingungen ### Mehr Bedingungen
Zeile 71: Zeile 65:
   * `kara.treeLeft()` trifft zu, falls links von Kara (in Laufrichtung) ein Baum steht.   * `kara.treeLeft()` trifft zu, falls links von Kara (in Laufrichtung) ein Baum steht.
   * `kara.treeRight()` trifft zu, falls links von Kara (in Laufrichtung) ein Baum steht.   * `kara.treeRight()` trifft zu, falls links von Kara (in Laufrichtung) ein Baum steht.
-### Aufgabe 9+ 
 + 
 +### Aufgabe L3
 Schreibe die Lösung zu Aufgabe 8 um, indem du die neuen Bedingungen einbaust! Schreibe die Lösung zu Aufgabe 8 um, indem du die neuen Bedingungen einbaust!
  
-++++Lösung 9|+++++Lösung L3|
 <code python> <code python>
 while not kara.mushroomFront(): while not kara.mushroomFront():
Zeile 85: Zeile 81:
         kara.move()         kara.move()
 </code> </code>
-+++ +++++ 
-+ 
-### Aufgabe 10+### Aufgabe L4
 Reicht das bereits, um aus jedem Labyrinth hinauszufinden? Zu früh gefreut, hier wartet die nächste Herausforderung! Überlege dir zuerst, wie du aus einem Labyrinth finden würdest, bevor du dich an den Code wagst! Reicht das bereits, um aus jedem Labyrinth hinauszufinden? Zu früh gefreut, hier wartet die nächste Herausforderung! Überlege dir zuerst, wie du aus einem Labyrinth finden würdest, bevor du dich an den Code wagst!
  
-<kara-editor id="a10"> +<kara-exercise id="L4"> 
-# Lösung von Aufgabe - was passiert?+# Lösung von Aufgabe L1 - was passiert?
 while not kara.mushroomFront(): while not kara.mushroomFront():
     if kara.treeFront():     if kara.treeFront():
Zeile 108: Zeile 104:
    TTTTTTTTT    TTTTTTTTT
 </kara-world> </kara-world>
-</kara-editor> +<kara-solution>
- +
-++++Ideen| +
-  * ... einfach mal die Hand an die Wand legen und nie loslassen! +
-++++ +
- +
-++++Lösung| +
-<code python>+
 while not kara.mushroomFront(): while not kara.mushroomFront():
     # Wir folgen der rechten Wand     # Wir folgen der rechten Wand
Zeile 126: Zeile 115:
         else:         else:
             kara.turnLeft()             kara.turnLeft()
-</code>+</kara-solution> 
 +</kara-exercise> 
 + 
 +++++Ideen| 
 +  * ... einfach mal die Hand an die Wand legen und nie loslassen!
 ++++ ++++
  
Zeile 143: Zeile 136:
 ++++ ++++
  
-### Aufgabe 10 (Challenge)+### Aufgabe L5 (Challenge)
  
 Finde aus dem untenstehenden Labyrinth! Finde aus dem untenstehenden Labyrinth!
  
-<nodisp 2> +<kara-exercise step="100" timeout="120" id="L5">
-++++Lösung| +
-<code python> +
-# Pledge-Algorithmus +
-angle = 0 +
-while not kara.mushroomFront(): +
-    # Wir verlassen die Wand, wenn wir in der Ursprungsrichtung +
-    # laufen. +
-    if not kara.treeLeft() and angle != 0: +
-        kara.turnLeft() +
-        angle += 90 +
-        kara.move() +
-    elif not kara.treeFront(): +
-        kara.move() +
-    else: +
-        kara.turnRight() +
-        angle -= 90 +
-</code> +
-++++ +
-</nodisp> +
- +
-<kara-editor step="100" timeout="120" id="a10">+
 <kara-world> <kara-world>
 ##################### #####################
Zeile 192: Zeile 164:
 #########M########### #########M###########
 </kara-world> </kara-world>
-</kara-editor>+<kara-solution> 
 +# Pledge-Algorithmus 
 +angle = 0 
 +while not kara.mushroomFront(): 
 +    # Wir verlassen die Wand, wenn wir in der Ursprungsrichtung 
 +    # laufen. 
 +    if not kara.treeLeft() and angle != 0: 
 +        kara.turnLeft() 
 +        angle += 90 
 +        kara.move() 
 +    elif not kara.treeFront(): 
 +        kara.move() 
 +    else: 
 +        kara.turnRight() 
 +        angle -= 90 
 +</kara-solution> 
 +</kara-exercise>
  
  • gf_informatik/karatutorial/labyrinthe.1786720796.txt.gz
  • Zuletzt geändert: 2026-08-14 15:19
  • von hof