Informatik 
Fachdidaktik

- Hauptseminararbeit im Fach Informatik -

Mark Ausborn

S. Spolwig
Hauptseminar
SS 2002

[Aktuelles | Dokumente | Inhalt | Literatur | Organisation]
[Startseite]

Thema:

Konzeption einer Einstiegsunterrichtseinheit

im Fach Informatik

mit der pädagogischen Programmierumgebung

"Kara"

 

Inhaltsverzeichnis:

Einführung

Konzeption Eigenen Unterrichts *

Planungsübersicht: *

1. Doppelstunde *

2. Doppelstunde *

3. Doppelstunde *

4. Doppelstunde *

Kara: Einstiegsaufgaben *

Aufgabe 1 – Kara, der Blätterfetischist *

Aufgabe 2a – Kara, der Tunnelsucher I *

Aufgabe 2b – Kara, der Tunnelsucher II *

Aufgabe 3a – Kleeblattsuche im Wald I *

Aufgabe 3b – Kleeblattsuche im Wald II *

Aufgabe 4 – das Labyrinth *

5. Doppelstunde *

Kara, der Slalom-Skater *

Kara, der Kleeblatt-Bewacher! *

6. Doppelstunde *

PacMan – oder wie verfolge ich eine Spur? *

Kara, der Mathematiker *

7. Doppelstunde *

Einfaches Labyrinth – Kleeblatt-Suche *

Kara schafft Ordnung *

Anhang:

Vorläufiger Rahmenplan

Lösungen der Aufgaben: - > sind in  karatotal.pdf zu finden.


Einführung

 

Konzeption Eigenen Unterrichts

Zielgruppe:

Schüler der Gymnasialen Oberstufe 11. Oder 12. Klasse.

Unterrichtsverlaufsplanung 1. Halbjahr

Thema: Analyse und Konstruktion von Algorithmen

Planungsübersicht:

Doppelstunde Thema Inhalte Bemerkungen
1 *) Einführung in das Arbeiten mit dem Rechner HW-, SW- Komponenten kennenlernen, Vorstellung der Schulrechenanlage Lehrervortrag und Unterrichtsentwickelndes Gespräch
2.1 Einführung in die Kara- Programmierumgebung Erkundung der Programierumgebung Begriffe: Methoden, Eigenschaften, Kontrollstrukturen
2.2 Programmieren einfacher Algorithmen I Automatisieren der Arbeitsschritte Übergang von manuellen zu automatischen Abläufen,
3 Programmieren einfacher Algorithmen II Systematisierung der Automatisierung Zustandsgraph, Kontrollstrukturen
4 Entwurf von Algorithmen I Kara als endlicher Automat (Read only) Gruppenarbeit 2er Gruppen:

Üb.Aufg. 1

5 Entwurf von Algorithmen II   Üb.Aufg. 2
6 Entwurf von Algorithmen III   Üb.Aufg. 3
7 Entwurf von Algorithmen IV Kara als Touring-Maschine (Read/Write) Üb.Aufg. 4, Grenzen der Programmierumgebung erforschen
8 Einführung in OOP Einführung, Analyse Geldwechselautomat
9 GUI-Objekte kennenlernen Delphi Einführung, GUI implementieren, Objekt begriffe  
10   Objekte erzeugen Ampelsteuerung Übung 0
11   Schleife, Verzweigung Ampelsteuerung Übung 1
12   Automatisierung, OOA, GUI Ampelsteuerung Übung 2
13 Grafik-Programmierung Grafik und Objekte Linie, Rechteck, Kreis, Zeichenblatt
14   Grafiken erzeugen Übung – Fachklassen benutzen
15     Mehrere Objekte, Kontrollstrukturen
16     Animation, Bildschirmschoner
17     Bildschirmschoner erzeugen
18   Klausur  

Zu *) Vorschlag für Einstiegsunterricht, wenn keinerlei Computererfahrung vorhanden ist.

 

Unterrichtsthema: Analyse und Konstruktion von Algorithmen

1. Doppelstunde

Thema:

Einführung in das Arbeiten mit einem Rechner

Inhalte:

Was ist ein Computer? Was macht ein Computer?

Komponenten des Computers – HW, - SW

Was ist ein Programm?, Wie starte ich ein Programm? Begriffe: Quelltext, Maschinensprache

Dateiorganisation im Rechner: Begriffe: Ordner, Datei, Betriebssysteme: DOS, Windows, Wichtige Befehle unter DOS: "cd", "copy", "md", "rd", "delete", "format", Umgang mit dem Word-Explorer, Aufruf eines Editors, Erstellen einer Datei, Verschieben der Datei innerhalb von Verzeichnissen, Kopieren einer Datei

Grobziele:

Die wesentlichen HW- und SW-Komponenten, die zu einem Rechner gehören kennenlernen Die Schüler sollen dabei den Rechner als Wekzeug verstehen und das ineinandergreifen der Komponenten der HW- und der SW verstehen.

Feinziele

Kognitive Dimension:

Komponenten eines Rechners benennen können: HW, SW

Was ein Programm aussmacht beschreiben können

Den Unterschied zwischen Betriebssystem und Programm erläutern können

Die Funktion des Betriebssystems beschreiben können

Psychomotorische Dimension:

Dateien können erstellt werden und Texte mit "Cut" und "Paste" bearbeitet werden

Dateien können im Rechner abgelegt werden und innerhalb der Ordnerhirachie verschoben werden

Dateien können kopiert werden

Unterrichtsverlauf:

Zeit/ Phase Geplantes Lehrerverhalten erwartetes Schülerver-halten Sozial/

Arbeitsform

Medien Ziel
Einführung

5 Min

L. kündigt U-anfang an, stellt einen Karton auf den Tisch und wartet 3 Min. Fragen der Schüler   Karton Neugierde wecken / Motivation
  L.: Aufschreiben der Fragen auf Zettel     Zettel Ruhe
  L: (Befragung der Schüler der Reihe nach): Kurze Vorstellung der eigenen Person

(Name, Hobby, Rolle der Inf. im eigenen Leben und "Was erwartet Ihr vom Inf.unterricht?"

    Tafel:

Sortieren der Erwartungen

 
  Ordnen der Fragen an der Tafel     Tafel Erarbeiten des Verlaufs des Informatikunt.
U-phase Siehe Feinziele   Unt.-entwickelndes Gespräch    
Ende Ausblick auf nächste Stunde        

2. Doppelstunde

Thema:

Einführung in die Kara- Programmierumgebung

Inhalt:

Erkundung der Programmierumgebung

Eigenschaften eines Programms

Begriffe: Methoden, Eigenschaften, Kontrollstrukturen

Grobziele:

Die Kara- Programmierumgebung kennenlernen

Feinziele

Kognitive Dimension:

Die Schüler sollen wissen wie man ein Programm aufruft.

Affektive Dimension:

Die Schüler sollen neugierig die Programmumgebung von Kara erforschen

Psychomotorische Dimension:

Experimenteller Umgang mit Kara

Unterrichtsverlauf:

Zeit/ Phase Geplantes Lehrerverhalten erwartetes Schüler-verhalten Sozial/

Arbeits-form

Medien Ziel
10 Min

Einführung/ Wiederholung

L: Begriffe erklären lassen:

Desktop, Dateien, Ordner, Programm

    Tafel Festigung
3 Min

Arbeitsauftrag formulieren

L: Erforschen der Programmumgebung von Kara.

Auftrag:

  • Was macht das Programm?
  • Einordnung in Programmart(Textverarbeitung, Grafik-, Zeichen-, Tabellenkalkulation)
  • Wie sieht die Welt von Kara aus ? (Modell)
  • Wie kann Kara sich in der Welt bewegen
  • Was kann Kara wahrnehmen?
  • Wie kann Kara ihre Welt verändern
  Lehrer-vortrag Tafel Zielgerichtetes Erforschen von Kara
20 Min.

Kara erkunden

    Einzeln bzw. 2er Gruppen Heft, Rech-ner  
12 Min

Ergebnis-sicherung

L: Befragung der Schüler Mitarbeit und Dokumentation der Ergebnisse im Heft Unterrichts-entwickeln-des Gespräch Tafel Festigung
5 Min. Erweiterung der Aufgabe L: Aufgabe 1: Schritte zum Ergebnis protokollieren     Tafel-bild Abb.: Aufg. 1  
30 Min.

Versuch einer Programmierung

  Eintragen in Kara      
10 Min. L: Wie läßt sich der Ablauf automatisieren ?

Ergebnisse / Erkenntnisse zusammentragen

       

Tafelbild:

 

Aufgabenbeschreibung:

Aufgabe 1: ( als Bild an der Tafel dargestellt (s.o.) und beschrieben in Worten)

Kara läuft auf eine Baum zu und soll diesem nach rechts ausweichen

Wie läßt sich diese Aufgabe automatisieren ?

 

3. Doppelstunde

Thema:

Programmieren einfacher Algorithmen

Inhalt:

Systematisierung der Automatisierung

Zustandsgraph, Kontrollstrukturen

Grobziele:

Der Schüler kann den Begriff "Programm" erklären und einen Algorithmus zum Ausweichen auf ein Hindernis in der Kara- Programmierumgebung eintragen und ausprobieren.

Feinziele

Kognitive Dimension:

Der Schüler kann Sichtweisen auf ein Programm von Seiten des Anwenders, des Programmierers und des Rechners erklären.

Sie können mit dem Bezug auf die Programmierumgebung die Begriffe Programm, Zustand und Methode erklären.

Psychomotorische und affektive Dimension:

Spielerisches Lernen beim Entwickeln eines Algorithmus

Unterrichtsverlauf:

Zeit/ Phase Geplantes Lehrerverhalten erwartetes Schülerver-halten Sozial/

Arbeitsform

Medien Ziel
Einführung

Ca. 25 Min

L: Was fällt Euch zum Thema "Automat" ein ?   Unt.Entw.Gespr. (UEG) Tafel  

1. Schritt: Sammeln der Schülerantworten auf der Tafel

2. Schritt: Sortieren der Antworten nach Beispielen, Eigenschaften, Funktion, ...

Tafelbild:

Automat:

Beispiele

Fahrkartenautomat

Geldautomat

Kaugummiautomat

Zigarettenautomat

? Computer

? Auto

Brotbackautomat

Eigenschaften

Selbständig < -- > gesteuert

Input - Black-Box - Output

Eingabe, Verarbeitung, Ausgabe "EVA"-Prinzip

Funktion:

Geld kassieren u. Ausfrucken einer FK

Berechtigung überprüfen und Geld ausg.

Kassieren und Kaugummi ausg.

Dito.

z.B. Texte aufnehmen und ausdrucken

gesteuerter Automat

Teig rein - - > Brot raus

 

L: Was ist ein Programm für: den Anwender, den Programmierer und den Rechner ?

Tafelbild:

Sichtweisen auf ein Programm

Anwender Programmierer Rechner
Hilfsmittel eine Aufgabe effizienter zu lösen Verdienst-Produkt Eine Folge von Anweisungen

 

 

 

 

L: Programm als Vorschrift bei gegebenen Zuständen bestimmte Aktionen durchzufügren

In der Fachsprache nenn man das Zustände und Methoden

       

Tafelbild:

 

UEBERG1.JPG (10280 Byte)

 

Übertragung auf Kara:

 

 

 

 

L.Zustand, Methode wie ist das in dem Bild wiedergegeben        
Handlungs-phase

ca. 45 Min

 

L: Automatisiert das Ausweichen um einen Baum        
Ergebnissicherung

20 Min

Zustandsgraph der Ausweichroutine an der Tafel entwickeln und vormachen        

4. Doppelstunde

Thema:

Programmieren einfacher Algorithmen

Inhalt:

Kontrollstrukturen

Grobziele:

Aufgaben in Programmschritte umsetzen

Festigung der Kontrollstrukturen

Feinziele

Kognitive Dimension:

Der Schüler kann die Lösung zu einem Problem in einem Zustandsgraphen abbilden und diese mit der Kara-Programmierumgebung ausführen.

Psychomotorische und affektive Dimension:

Spielerisches Lernen beim Entwickeln eines Algorithmus und der Kontrollstrukturen.

Kara: Einstiegsaufgaben

Hinweis: Die Abbildungen der Welten bei den Aufgaben sind als Beispiel zu verstehen. Ihre Programme sollten die Aufgaben so lösen, dass Kara die Aufgabe auch in einer gleich strukturierten Welt lösen kann. Zum Beispiel soll es bei der ersten Aufgabe nicht darauf ankommen, wo die Kleeblätter liegen oder wie weit der Baum entfernt ist. Kara weiss nur, dass geradeaus vor ihm ein Baum ist, ohne Pilz zwischen ihm und dem Baum. Analog sind die Bilder bei den übrigen Aufgaben zu verstehen. Wichtig: Testen Sie Ihre Programme immer an mehreren verschiedenen Welten, insbesondere bei den Aufgaben 2 und 3!

Kara: Einstiegsaufgaben

Aufgabe 1 – Kara, der Blätterfetischist

 

Schreiben Sie ein Programm, das Kara bis zum nächsten Baum führt. Kara weiss, dass geradeaus vor ihm ein Baum ist. Liegt auf einem Feld ein Blatt, soll Kara es aufnehmen; liegt auf einem Feld kein Blatt, eines hinlegen. Bei dem Baum angekommen ist das Programm zu beenden.

Aufgabe 2a – Kara, der Tunnelsucher I

Kara sucht den Eingang eines geraden Tunnels (Feld 2a). Er weiss, dass dieser Tunnel geradeaus vor ihm liegt. Schreiben Sie ein Programm, das ihn auf dem ersten Feld im Tunnelinnern anhalten lässt. Aber Achtung: manche Tunnels haben zunächst eine einseitige Gallerie, manche links, manche rechts!

Aufgabe 2b – Kara, der Tunnelsucher II

Kara will den Ausgang des Tunnels finden (Feld 2b). 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 Gallerie laufen! Hinweis: Die Lösung erfordert zwei Zustände! Überlegen Sie Sich, warum ein ein Zustand nicht ausreichen kann!

Bemerkung: Den STOP-Zustand zähle ich nie mit beim Zählen der Zustände!

Aufgabe 3a – Kleeblattsuche im Wald I

Kara sucht ein Kleeblatt. Er weiss, dass eines geradeaus vor ihm liegt – er muss nur um die Bäume herumlaufen. Glücklicherweise stehen nie zwei Bäume nebeneinander. Schreiben Sie ein Programm, das ihn bis zum Kleeblatt führt!

Aufgabe 3b – Kleeblattsuche im Wald II

Erweitern Sie Ihr Programm von Aufgabe 3a so, dass Kara auch mit mehreren nebeneinander stehenden Bäumen fertig wird! Hinweis: Die Lösung dieser Aufgabe erfordert zwei Zustände! Warum reicht ein Zustand nicht aus?

Aufgabe 4 – das Labyrinth

Kara steht in einem Labyrinth aus Bäumen. Schreiben Sie ein Programm, das ihn bis zum Ende des Labyrinths führt! Dort soll er ein Kleeblatt hinlegen; damit ist die Programm zu beenden.

Überlegen Sie Sich, wie "stabil" Ihr Programm ist: was ist, wenn eine Wand ein "Loch" hat (ein Baum fehlt)? Funktioniert es trotzdem noch? Unter welchen Bedingungen?

 

5. Doppelstunde

Thema:

Programmieren einfacher Algorithmen

Inhalt:

Kontrollstrukturen

Grobziele:

Aufgaben in Programmschritte umsetzen

Festigung der Kontrollstrukturen

Feinziele

Kognitive Dimension:

Der Schüler kann die Lösung zu einem Problem in einem Zustandsgraphen abbilden und diese mit der Kara-Programmierumgebung ausführen.

Psychomotorische und affektive Dimension:

Spielerisches Lernen beim Entwickeln eines Algorithmus und der Kontrollstrukturen.

Kara, der Slalom-Skater

Inline-Skates faszinieren Kara! Er möchte üben, Slalom zu "fahren" zwischen Bäumen [slalom.world]:

Starten mit einer Linksdrehung, dann zwischen den Bäumen elegant in eine Rechtsdrehung übergehen, dann zwischen den nächsten Bäumen wiederum in einer Linksdrehung... der Anfang des Slaloms ist eingezeichnet; so weiter ad infinitum! Oder bis Kara schwindlig wird!

Die Aufgabe (Schwierigkeitsgrad: 2 von 5)

Programmieren Sie Kara so, dass er diesen Slalom fahren kann! Wie lang der Parcour ist (wieviele Bäume nebeneinander stehen), weiss Kara zu Beginn natürlich nicht! Auch soll es ihm egal sein, ob die Bäume horizontal oder vertikal nebeneinander stehen!

Zusatzfrage

Ihre Lösung hat mindestens zwei Zustände. Warum kann es mit weniger nicht gehen?

Kara, der Kleeblatt-Bewacher!

Kara hat sich einen leckeren Vorrat von Kleeblättern angelegt. Dieser ist von Bäumen umringt. Damit sich niemand an seinen Kleeblättern vergreift, beschliesst Kara, diesen Wald zu patroullieren, ihn immer wieder abzulaufen. So sieht der "Vorratswald" aus [followwall.world]:

Die Aufgabe (Schwierigkeitsgrad: 2 von 5)

Programmieren Sie Kara so, dass er endlos um diesen "Wald" läuft! Sie können selbst entscheiden, ob Sie ihn links- oder rechtsherum laufen lassen.

 

Hinweis: Ein Zustand reicht aus für die Lösung der Aufgabe. Versuchen Sie, mit möglichst wenig Sensoren auszukommen, und möglichst wenig Übergänge in ihrem Zustand zu haben!

Varianten

Falls Ihr Programm mehr als einen Zustand hat: Schreiben Sie eine "optimierte" Fassung, die nur einen Zustande hat!

Erweitern Sie Ihr Programm so, dass Kara zuerst geradeaus bis zum nächsten Baum läuft und erst dann mit dem Patroullieren beginnt. Dazu müssen Sie ihn vor Programmbeginn allerdings so setzen, dass er geradeaus laufend überhaupt einen Baum findet!

 

6. Doppelstunde

Thema:

Programmieren einfacher Algorithmen

Inhalt:

Kontrollstrukturen

Grobziele:

Aufgaben in Programmschritte umsetzen

Festigung der Kontrollstrukturen

Feinziele

Kognitive Dimension:

Der Schüler kann die Lösung zu einem Problem in einem Zustandsgraphen abbilden und diese mit der Kara-Programmierumgebung ausführen.

Psychomotorische und affektive Dimension:

Spielerisches Lernen beim Entwickeln eines Algorithmus und der Kontrollstrukturen.

PacMan – oder wie verfolge ich eine Spur?

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 [pacman1.world, pacman2.world]:

Die Aufgabe (Schwierigkeitsgrad: 3 von 5)

Programmieren Sie Kara so, dass er die Spur von Kleeblättern "auffrisst"! Da Sie wissen, dass die Spur nie entlang eines Baumes geht, kann das Programm beendet werden, sobald Kara auf einem Kleeblatt vor einem Baum steht. Sie können selbst bestimmen, ob Sie auf einem Kleeblatt oder davor starten wollen.

 

Hinweis I: Die Lösung ist trickreich! Überlegen Sie Sich zuerst auf Papier genau, in welchen Situationen Kara sich finden kann, und was er tun muss!

 

Hinweis II: Testen Sie Ihr Programm an mehreren verschiedenen Spuren! Sonst laufen Sie Gefahr, dass Ihr Programm nur für genau einen Spezialfall von Spur funktioniert. Das ist beim Programmieren immer eine sehr grosse Gefahr und kann leicht zu Problemen beim Einsatz eines Programmes führen!

Kara, der Mathematiker

Kara möchte das berühmte Pascal-Dreieck zeichnen, bestehend aus Kleeblättern [pascal.world; pascal_done.world]:

 

Die Aufgabe (Schwierigkeitsgrad: 4 von 5)

Programmieren Sie Kara so, dass er ein binäres Pascal-Dreieck zeichnet. Das heisst, jede Zahl wird "modulo 2" abgebildet: eine gerade Zahl wird als freies Feld dargestellt, eine ungerade Zahl als Feld mit einem Kleeblatt drauf. Der Einfachkeit halber kippen wir das Dreieck in die linke obere Ecke der Welt. Die obige Abbildung zeigt die Ausgangslage für diese Aufgabe und das von Kara gezeichnete Pascal-Dreieck. Wie die inneren Felder berechnet müssen, zeigt folgende Abbildung:

Hinweis: Denken Sie daran: die Zustände sind Kara’s Gedächtnis! Diese Tatsache müssen Sie bei dieser Aufgabe ausnützen. Mit weniger als drei Zuständen dürften Sie nicht auskommen.

 

7. Doppelstunde

Thema:

Programmieren einfacher Algorithmen

Inhalt:

Kontrollstrukturen

Kara als Touring-Maschine (Read/Write)

Grobziele:

Aufgaben in Programmschritte umsetzen

Festigung der Kontrollstrukturen

Grenzen der Programmierumgebung erforschen

Feinziele

Kognitive Dimension:

Der Schüler kann die Lösung zu einem Problem in einem Zustandsgraphen abbilden und diese mit der Kara-Programmierumgebung ausführen.

Psychomotorische und affektive Dimension:

Spielerisches Lernen beim Entwickeln eines Algorithmus und der Kontrollstrukturen.

Einfaches Labyrinth – Kleeblatt-Suche

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 [levellabyrinth1.world, levellabyrinth2.world]:

Jede horizontale Baumreihe ausser der untersten hat genau einen Ausgang. Diesen muss Kara jeweils finden. Hinter dem letzten Ausgang wartet das Kleeblatt auf ihn!

Die Aufgabe (Schwierigkeitsgrad: 3 von 5)

Programmieren Sie Kara so, dass er das Kleeblatt findet! Er soll das Kleeblatt aufnehmen; damit soll das Programm enden. Die Startposition und Startrichtung in der untersten Labyrinthzeile können sie frei wählen. Sie müssen aber Ihr Programm daran anpassen!

Hinweis: Testen Sie Ihr Programm an mehreren verschiedenen Labyrinthen! Sonst laufen Sie Gefahr, dass Ihr Programm nur für genau einen Spezialfall von Labyrinth funktioniert. Das ist beim Programmieren immer eine sehr grosse Gefahr und kann leicht zu Problemen beim Einsatz eines Programmes führen!

Zusatzfragen

  • Wie verhält sich Ihr Programm, wenn es mehr als ein Loch in einer Baumreihe hat? Funktioniert es immer noch? Warum oder warum nicht?
  • Falls Ihr Programm drei Zustände hat: Versuchen Sie, mit zwei Zuständen auszukommen! Ginge es auch mit einem einzigen Zustand?

Kara schafft Ordnung

Kara hat etwas gegen Unordnung. Daher beschliesst er, die Balken von Kleeblätter in seiner Welt zu sortieren [bubblesort.world]:

Die Aufgabe (Schwierigkeitsgrad: 5 von 5)

Programmieren Sie Kara so, dass er die Balken von Kleeblättern sortiert! Es gibt viele Sortierverfahren; für Kara allerdings kommen nicht alle in Frage. BubbleSort ist ein geeigneter Algorithmus für Kara – ist aber natürlich nicht gerade effizient. Aber trotzdem, mit etwas Geduld bringen Sie Kara dazu, die Balken zu sortieren! Überlegen Sie sich gut, wie Sie das Programm möglichst einfach halten können – dazu müssen Sie die Aufgabe geschickt in "Teile" zerlegen, die Sie dann wie Bausteine zusammensetzen können.

 


27. Juli 2006

   Mark Ausborn

page_top