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:algorithmen_i_sca [2024-12-12 20:44] – [Aufgabe B9] scagf_informatik:algorithmen_i_sca [2024-12-20 09:38] (aktuell) – [Installation] sca
Zeile 185: Zeile 185:
      1. und ziehe es in den vorbereiteten Ordner.      1. und ziehe es in den vorbereiteten Ordner.
      1. Öffne nun deinen Ordner mit VSCode und beginne darin zu arbeiten.      1. Öffne nun deinen Ordner mit VSCode und beginne darin zu arbeiten.
 +
 +Christmas Edition:
 +{{ :gf_informatik:christmas_images.zip |}}
  
 === Erste Schritte mit dem Skunky === === Erste Schritte mit dem Skunky ===
Zeile 434: Zeile 437:
    * Wert 2 (hier 5): Anzahl Zellen in $y-$Richtung    * Wert 2 (hier 5): Anzahl Zellen in $y-$Richtung
    * Wert 3 (hier 25): Wert zwischen 1 und 100, je kleiner, desto mehr Abbiegungen im Weg    * Wert 3 (hier 25): Wert zwischen 1 und 100, je kleiner, desto mehr Abbiegungen im Weg
 +
 +Auftrag (wenn räumlich möglich):
 +
 +   1. Baue Labyrinth mit Stühlen nach.
 +   1. Arbeite in kleinen Gruppen.
 +   1. Auf *Papier*: Schreibt Code, der Skunky für jedes solche Labyrinth zum Ziel führt.
 +   1. Probiert Code im echten Labyrinth aus, verbessert gegebenenfalls.
 +   1. Schreibe Code in Python. Jede(r) schreibt *eigenen* Code.
  
 ++++Code| ++++Code|
Zeile 481: Zeile 492:
 lab = create_random_world_with_path(20,5,25) lab = create_random_world_with_path(20,5,25)
  
-fritz = Skunky(world_map=lab)+fritz = Skunky(world_map=lab,delay_time=200,cell_size=30) 
 + 
 +# here add your code 
 fritz.show_indefinitely() fritz.show_indefinitely()
 </code> </code>
 ++++ ++++
 +
 +=== Aufgabe B10 ===
 +
 +Stelle dir vor, dass eines Tages dein Überleben davon abhängt, ob du aus einem Labyrinth herausfindest oder nicht. Wie gehst du vor? Es gibt einen einfachen Algorithmus, mit dem man aus fast jedem Labyrinth herausfindet. Das Ziel dieser Aufgabe ist, diesen Algorithmus selbst herauszufinden und dann für den Skunky zu implementieren.
 +
 +   1. Arbeite in 2er Gruppe
 +   1. Holt beim Lehrer einen Ausdruck des folgenden Labyrinths:\\
 +{{:gf_informatik:skunky_lab_1.png?200|}}
 +   1. Verwendet ein kleines Objekt als Skunky ...
 +   1. ... und versucht verschiedene Ideen heraus, mit der der Skunky *systematisch* aus diesem und (fast) jedem anderen Labyrinth herausfindet. Findet eine Strategie / einen Algorithmus.
 +   1. Diskutiert eure Strategie mit dem Lehrer.
 +   1. Sobald ihr das OK vom Lehrer habt: Implementiert euren Algorithmus für den Skunky und probiert diesen für verschiedene Labyrinthe aus.
 +
 +=== Optional: Aufgabe B11 ===
 +
 +Ziemlich anspruchsvoll. Es hilft auch, wenn man schon weitere Programmierkonzepte wie Listen kennt.
 +
 +   1. Mit dem Algorithmus der letzten Aufgabe findet man aus fast allen Labyrinthen heraus. Es gibt aber solche, für die dieser Algorithmus nicht funktioniert. Für welche?
 +   1. Ein Beispiel ist das Labyrinth unten. Hole beim Lehrer einen Ausdruck und versuche, einen Algorithmus zu finden, der den Skunky aus diesem (und jedem anderen Labyrinth) herausbringt.
 +   1. Implementiere den Algorithmus als Code.
 +
 +{{:gf_informatik:skunky_lab_floating_walls.png?200|}}
 +
 +++++Code Labyrinth|
 +
 +<code python>
 +lab = [
 +    "ttttttttttttttt",
 +    "            t",
 +    "t t ttttt ttt t",
 +    "t t t   tttgt t",
 +    "t t t t   t t t",
 +    "t t   ttt   t t",
 +    "t ttttt  tttt t",
 +    "            t",
 +    "tttttttt tttttt",
 +    "     t    t",
 +    "tf ttt ttt t tt",
 +    " tpt      t",
 +    "tf t ttt t  t t",
 +    " t      tt  t",
 +    "tf tttttt tt tt",
 +    "tf            t",
 +    "ttttttttttttttt",
 +]
 +</code>
 +
 +++++
 +
 +
  • gf_informatik/algorithmen_i_sca.1734036249.txt.gz
  • Zuletzt geändert: 2024-12-12 20:44
  • von sca