Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Kara, der programmierbare Marienkäfer !

Ähnliche Präsentationen


Präsentation zum Thema: "Kara, der programmierbare Marienkäfer !"—  Präsentation transkript:

1 Kara, der programmierbare Marienkäfer !

2 In der Welt des Marienkäfers...
... gibt es: unbewegliche Baumstümpfe, Pilze, die Kara verschieben und Kleeblätter, die Kara legen und aufnehmen kann ... und natürlich Kara selbst!

3 Karas Welt

4 Kara, der Marienkäfer... ... versteht einige Befehle, die er folgsam ausführt: mache einen Schritt vorwärts! drehe um 90° nach links! drehe um 90° nach rechts! lege ein Kleeblatt hin! nimm ein Kleeblatt auf!

5 Übung 1 Bauen Sie die folgende Welt für Kara auf: Aufgabe:
Die Welt von Kara können Sie selber gestalten: platzieren Sie beliebig viele Gegenstände auf der Wiese. Ziehen Sie mit Drag-and-Drop den gewünschten Gegenstand auf die Wiese. Will man einen Gegenstand löschen, so zieht man ihn mit Drag-and-Drop von der Wiese auf den Mülleimer. Bauen Sie die folgende Welt für Kara auf: Aufgabe: Kara soll nun zum Baumstumpf gehen. Unterwegs soll er jedes Kleeblatt aufnehmen. Liegt kein Kleeblatt auf einem Feld, so soll Kara eines hinlegen. Benutzen Sie dazu die Befehle am linken Rand. Am Schluss soll es so aussehen: Kara soll nun noch einen Schritt geradeaus machen. Was passiert?

6 Kara der Marienkäfer… Ziel: Kara so zu programmieren, dass er seinen Auftrag in verschiedenen Welten ausführen kann. ... hat Sensoren, mit denen er seine Umwelt wahrnimmt: stehe ich vor einem Baumstumpf? ist links von mir ein Baumstumpf? ist rechts von mir ein Baumstumpf? stehe ich vor einem Pilz? stehe ich auf einem Kleeblatt?

7 Übung 2 a) Welche Sensoren würde man einsetzen, damit Kara den Auftrag aus Übung 1 erledigen kann? b) Gegeben sei diese Welt: Kara startet in der angezeigten Position und macht dann nacheinander die folgenden Aktionen: Start nach 1 Schritt nach 2 Schritten nach 3 nach 4 nach 5 × Füllen Sie folgende Tabelle aus. Überlegen Sie was Karas Sensoren in jedem Schritt „sehen“.

8 Automaten im Alltag

9 Beispiel Geldautomat warte auf Karte Karte gültig ? Nein Ja Fehler-
meldung neuer Bildschirm warte auf Abschluss der PIN-Eingabe PIN korrekt ? Nein Ja Fehler- medung neuer Bildschirm warte auf Funktionswahl CASH-Funktion? Bezug-Funktion?

10 Automaten in der Informatik
Ein Automat bleibt in einem Zustand und wartet darauf über einen Sensor von aussen einen … Input zu erhalten. Angestossen durch diesen Input wählt er den … Übergang, der mit dem gegebenen Input beschriftet ist, führt die angegebenen … Aktionen aus und wechselt entweder in einen anderen Zustand oder bleibt im alten Zustand. Jeder Automat hat einen Startzustand, in dem er mit der Arbeit beginnt.

11 Automaten in der Informatik
Automaten basieren auf „Wenn…, dann…“-Aussagen. Wenn gewisse Bedingungen erfüllt sind, dann sollen bestimmte Aktionen ausgeführt werden.

12 Schüler und Zustände Schüler und Zustände
Die Versetzung ändert den Klassenzustand eines Schülers. Sitzen bleiben bedeutet: der Zustand bleibt, die Klasse wird wiederholt.

13 Übung 3 Zeichnen Sie einen Automaten, der einen Lichtschalter steuert.
Ein Sensor meldet dem Automaten, wenn der Schalter gedrückt wurde. Die Aufgabe ist dann gut gelöst, wenn: der Automat korrekt arbeitet. die Zustände sprechende Namen haben. alle Übergänge eingezeichnet und mit Input und Aktionen beschriftet sind.

14 Lösung Lichtschalter drücken Licht aus Licht ein start drücken
Ein Lichtschalter hat nur zwei Zustände, ein und aus. Ein „Sensor“ meldet, wenn der Schalter betätigt wird. drücken Licht aus Licht ein start drücken

15 Übung 4 Zeichnen Sie einen Automaten für die Steuerung eines Videorecorders. Der Videorecorder hat der Einfachheit halber nur die folgenden Tasten: Bei dieser Aufgabe sollen alle möglichen Übergänge eingezeichnet werden. Das heisst, dass es aus einem Zustand für alle möglichen Inputs einen Übergang geben muss. Unter Umständen führt der Übergang wieder in denselben Zustand zurück.

16 Lösung Videogerät start Spulen „play“ „forward“ „rewind“ „play“
„pause“ Warten Video abspielen Nichts tun start „play“ „stop“ Time out

17 Getränkeautomaten Dieser Automat... akzeptiert nur
zeigt eingeworfenen Betrag an gibt nur aus für 3,- 0.00

18 Das Leben eines Getränkeautomaten...
2.00 3.00 1.00 2.00 3.00 0,- 1,- 2,- 3,- 0.00 Coke Sprite

19 Das Leben eines Getränkeautomaten...
Frage: oder ? stellt sich der Automat in einem Zustand werden von seinen Sensoren beantwortet 0,- 1,- 2,- 3,- Zustand

20 Das Leben eines Getränkeautomaten...
Frage: oder ? die Antwort darauf gibt der Automat in einem Übergang führt dabei gewisse Aktionen aus 2.00 3.00 0,- 1,- 2,- 3,- 1.00 2.00 3.00 Coke Übergang 0.00 Sprite

21 Kara und Automaten Der Automat ist Karas Gehirn.
Er bekommt von den Sensoren Informationen über die Umgebung. Das ist der Input für unseren Automaten. Die Aktionen unseres Automaten sind die Befehle an Kara, die er ausführen soll.

22 Kara, der Blättersammler Zustände
Welche Zustände kommen vor?

23 Kara, der Blättersammler Übergänge und Aktionen
Welche Übergänge kommen vor und welche Aktionen sollen ausgeführt werden? Karas Aktionen nächster Zustand × Blätter sammeln - Stopp

24 Übung 5 : Kara, der Blättersammler
Aufgabe: Zeichnen Sie mit Hilfe der Zustände und der entsprechenden Übergänge den dazugehörigen Automaten.

25 Lösung Kara, der Blättersammler Automat

26 Übung 6 In dieser Aufgabe geht es darum einen bestehenden Automaten zu analysieren. Aufgabe: Gegeben ist die unten stehende Wiese. Zeichnen Sie den Weg ein, den Kara geht, wenn er durch den oben abgebildeten Automaten gesteuert wird. Hinweis: Wenn Kara während eines Ausweichmanövers in einen Baum rennt, dann wird eine Fehlermeldung ausgegeben und der Automat wechselt in den Stoppzustand.

27 Programmieren mit Kara
Der Stoppzustand ist standardmässig schon gezeichnet. Im Feld, wo der Stoppzustand ist, kann der Automat gezeichnet werden. Links davon sind alle Operationen, die benötigt werden, um einen Automaten zu zeichnen.

28 Zustände einfügen 1 Die folgenden Operationen stehen zur Verfügung, um einen Automaten zu zeichnen: Um einen neuen Zustand zu erhalten, klickt man auf dieses Symbol. Es geht ein Zustandseditor auf, in dem du den Zustand editieren kannst. Einen Zustand kann man verändern, in dem man ihn zuerst mit der Maus anklickt und dann mit einem Mausklick auf dieses Symbol den Zustandseditor öffnet. Jeder Automat muss einen Startzustand haben. Markieren Sie einen Zustand und klicken Sie mit der Maus auf dieses Symbol, um den Zustand als Startzustand auszuzeichnen. Ein Mausklick auf dieses Symbol löscht den zuvor mit der Maus ausgewählten Zustand. Einen Übergang zwischen zwei Zuständen erhält man, wenn im Ausgangszustand in den äusseren Ring klickt, die Maustaste gedrückt hält, den Mauszeiger in den Folgezustand zieht und die Maustaste wieder los lässt.

29 Zustände einfügen 2 Zeichnen Sie einen neuen Zustand mit einem Mausklick auf das dieses Symbol . Geben Sie dem neuen Zustand im Namensfeld einen entsprechenden Namen. Wählen Sie dann die benötigten Sensoren und ziehen sie mit Drag-and-Drop in den Rahmen unter „Benutzte Sensoren“.

30 Übergänge zeichnen Klicken Sie in den äusseren Rand des Startzustandes und ziehen Sie den Mauszeiger auf den Folgezustand, ohne die Maustaste loszulassen. Hinweis: In der Ansicht des Automaten wird immer nur ein Übergang dargestellt.

31 Input und Aktionen Die Beschriftung der Übergänge mit Input und Aktionen machen wir im Übergangseditor. Fügen Sie alle Sensorbelegungen und die Anweisungen an Kara den Übergängen hinzu.

32 Programm laufen lassen

33 Kara, der Blättersammler
Aufgabe: Schreiben Sie ein Programm, das Kara geradeaus bis zum nächsten Baumstumpf führt. Kara weiss, dass geradeaus vor ihm ein Baumstumpf steht. Liegt auf einem Feld ein Blatt, soll Kara es aufnehmen. Beim Baumstumpf angekommen ist das Programm zu beenden. (Achtung: Nur wenn ein Baumstumpf vor Kara liegt, läuft das Programm korrekt.) Das Bild links zeigt die Ausgangslage und auf dem Bild rechts sieht man wie es aussehen muss, nachdem Kara Ihren Auftrag erledigt hat.

34 Übung 7: Kara sucht einen Baumstumpf
Aufgabe: Kara soll bis zum nächsten Baumstumpf laufen, dann 180° Drehung!

35 Kara sucht einen Baumstumpf
Problem: bis zum nächsten Baumstumpf laufen, dann 180° Drehung! Problemlösung: es läuft folgender Dialog zwischen Computer und Kara ab: Computer: Stehst Du vor einem Baum? Kara: NEIN! JA! Computer: Dann lauf ein Feld weiter! Dann dreh Dich um 180° und bleib stehen!

36 Lösung Übung 7 Das Programm: ein Zustand „find tree“,
ein Sensor „stehe vor Baum“

37 Übung 8: Kara, der Wächter
Aufgabe: Kara soll linksherum bis Kleeblatt, dann rechtsherum bis Kleeblatt, dann linksherum... laufen

38 Lösung Übung 8 Das Programm: zwei Zustände: einer für Linksdrehung,
einer für Rechtsdrehung

39 Kara, der Tunnelwächter
Die Aufgabe: Kara soll den „Tunnel“ in beiden Richtungen endlos ablaufen Die Analyse: Kara ist zu jedem Zeitpunkt in genau einer dieser fünf Situationen: Nur vor ihm ist kein Baum Nur links von ihm ist kein Baum Nur rechts von ihm ist kein Baum Links und rechts kein Baum Links, rechts und vorne Bäume  braucht drei Sensoren:

40 Kara, der Tunnelwächter
Die Analyse: Kara ist zu jedem Zeitpunkt in genau einer dieser 5 Situationen: Das Programm: Kara muss nur diese 5 (von allen möglichen 8) Situationen berücksichtigen: Nur vor ihm ist kein Baum Nur links von ihm ist kein Baum Nur rechts von ihm ist kein Baum Links, rechts und vorne Bäume Links und rechts kein Baum Dies ist nur eine von allen möglichen Lösungen!

41 Übung 9: Kara und der Tunnel
Aufgabe: Kara sucht den Eingang eines geraden Tunnels (Feld a). Schreiben Sie ein Programm, das ihn auf dem ersten Feld im Tunnelinneren anhalten lässt. Achtung: Manche Tunnels haben zunächst eine einseitige Wand, manche links, manche rechts. b) Kara will den Ausgang des Tunnels finden (Feld b). Dazu muss er zunächst den Tunnel durchqueren. Schreiben Sie ein Programm, das ihn auf dem ersten Feld nach dem Tunnel anhalten lässt - er soll nicht bis zum Ende der Galerie laufen!

42 Wozu sind Zustände gut ? manchmal eine Frage des Programmierstils
als Gedächtnis: was hat Kara schon erledigt ? Beispiel: Aufgabe „suche Tunnelausgang“ 1. „enter“: suche Tunneleingang (links und rechts eine Wand) 2. „exit“: suche Tunnelausgang (links oder rechts keine Wand)

43 Weitere Übungen: Kara, der Parkettleger
Aufgabe: Kara möchte sich als Parkettleger betätigen. Er will ein schachbrettartiges Muster legen. Programmieren Sie Kara so, dass er ein solches Muster innerhalb der Bäume erzeugt.

44 Einfaches Labyrinth Aufgabe:
Kara sitzt in einem Labyrinth fest. Er möchte raus, denn beim Ausgang des Labyrinths wartet ein leckeres Kleeblatt auf ihn! Zwei Beispiele von Labyrinth-Welten: Jede horizontale Baumreihe ausser der untersten hat genau einen Ausgang. Diesen muss Kara jeweils finden. Hinter dem letzten Ausgang wartet das Kleeblatt auf ihn!

45 Kara – Pac man oder wie verfolge ich eine Spur
Aufgabe: Kara möchte das uralte PC-Spiel PacMan spielen – in einer vereinfachten Version. Er soll eine Spur von Kleeblättern „auffressen“. Er weiss, dass diese Spur nie entlang eines Baumes geht – sie endet an einem Baum! So sehen „Spur-Welten“ aus: Programmieren Sie Kara so, dass er die Spur von Kleeblättern „auffrisst“! Da man weiss, dass die Spur nie entlang eines Baums geht, kann das Programm beendet werden, sobald Kara auf einem Kleeblatt vor einem Baum steht.

46 Warum klappt das Programm auch für eine Linkskurve?
Hilfe für PacMan Warum klappt das Programm auch für eine Linkskurve?

47 In alle! Hilfe für PacMan
In welche Richtungen kann Kara die Kleeblatt- Spur verfolgen (bedenke: Kara kann nicht sehen und weiß nicht wo er sich gerade befindet!!!) In alle!

48 Kara und die Ausserirdischen
Aufgabe: Kara glaubt an Ausserirdische. Er ist überzeugt, dass bestimmte Muster von Kleeblättern in seiner Welt auf ihre baldige Ankunft hinweisen! Nur weiss er nicht so recht, welches Muster er erwarten soll. Er stellt sich vor, dass es eines von drei Mustern ist. Betrachten wir als erstes folgende Welt: Programmieren Sie Kara so, dass er prüft, ob in der Zeile, in der er steht, folgendes Muster vorkommt: Er soll solange das Muster suchen, bis er an einem Baum ankommt. Dann gibt er die Suche auf. Sobald er das Muster findet, soll er seine Freude darüber signalisieren, indem er sich links dreht und in die darüber liegende Zeile begibt. Danach kann er das Programm beenden. Findet er es nicht, geht er enttäuscht nach rechts in die darunter liegende Zeile.

49 Bezug zu den Bildungsstandards
Die Schülerinnen und Schüler sind in der Lage: selbstständig, zielorientiert und mit den jeweils angemessenen Methoden zur Lösung, Visualisierung und Strukturierung von Sachverhalten und Problemen informationstechnische Werkzeuge einzusetzen. mithilfe geeigneter Programme einfache interaktive Anwendungen und Programme zur Simulationen und zum Steuern und Regeln zu erstellen.

50 Warum Kara? Kriterium Erläuterung Kara ist einfach
Kara ist für Programmieranfänger konzipiert Kara setzt keinerlei Kenntnisse voraus Kara ist sehr einfach zu bedienen Syntaxfehler gibt es nicht! Kara ist methodisch wertvoll Kara bietet die Möglichkeit die Programmausführung schrittweise zu verfolgen farbige Untermalung des Programmablaufs während der Ausführung bis zur Anweisungsebene visuelle Darstellung des zugehörigen Zustanddiagramms Kara gibt eine Rückmeldung über die Korrektheit des erstellten Programms im Handumdrehen Erprobung an unterschiedlichen Welten sehr realitätsnah Kara gibt sinnvolle Fehlermeldungen aus, mit denen SchülerInnen etwas anfangen können Kara weist bei der Ausführung der Programme auf Logikfehler hin Kara motiviert Kara macht Spaß, erzeugt Spannung und ist grafisch ansprechend Technische Vorteile Kara steht für den Unterricht frei zur Verfügung Einsatzfähigkeit auf verschiedenen Betriebssystemen einfache Installation ständige Weiterentwicklung durch ein kompetentes Team aus Informatikern an der ETH Zürich Weiterführung der Arbeit in der Oberstufe mit javakara möglich Unterstützung des Lehrers umfangreiche Materialsammlung mit Aufgaben und Vorträgen im Internet


Herunterladen ppt "Kara, der programmierbare Marienkäfer !"

Ähnliche Präsentationen


Google-Anzeigen