Informationen verarbeiten: Modell – Algorithmus – Lösung

Werbung
Didaktische Umsetzung des Themas
„Informationen verarbeiten:
Modell – Algorithmus – Lösung“
mit Programmierumgebungen
in der Sekundarstufe I
LFB D04076 am 01.03.2012
Katrin Büttner
Thomas Knapp
Bettina Timmermann
Gliederung
 Grundsätze und Standards für die Informatik in der Schule (Empfehlungen der GI e.V.
vom Januar 2008)
 Kurze Bemerkungen zu den sächsischen Lehrplänen
 Fachliche Grundlagen
-
Klassen und Objekte
Programmierparadigmen
Algorithmusbegriff
Algorithmische Grundstrukturen
Funktionen und Prozeduren
Rekursion
Problemlöseprozess
 Übersicht über Werkzeuge zur Modellierung und über Programmierumgebungen
-
LFB – D04076
01. März 2012
Modellierungswerkzeuge
Anforderungen an eine Programmierumgebung und –sprache für den Anfangsunterricht
Programmierumgebungen für den Informatikunterricht (EOS, Kara, Karol, Logo, Scratch)
1
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informatikstandards
„Die ‘Standards‘ nennen die Kompetenzen, die
die Schülerinnen und Schüler unter den
Rahmenbedingungen des Informatikunterrichts
erwerben sollen. Dazu sind die Standards in
fünf Inhalts- und fünf Prozessbereiche
unterteilt.“
(Rahmen: je 1 Wochenstunde in den Klassenstufen 5 – 10)
Quelle: Grundsätze und Standards für die Informatik …
Beilage zu LOG IN, Heft 150/151 (2008)
LFB – D04076
01. März 2012
2
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informatikstandards
www.informatikstandards.de
Diese Webseite ist im Rahmen
von Komplexpraktika in der
Arbeitsgruppe Didaktik der
Informatik/Lehrerbildung an der
Fakultät Informatik der
Technischen Universität Dresden
entstanden. (Leitung: Prof. Dr.
Friedrich)
Mitgewirkt haben:
(im Sommersemester 2008)
Kristin Albert, Ivonne Günther,
Anne Hellriegel, Cosmin Jurma,
Andreas Müller, Axel Schröder
(im Sommersemester 2009)
Johannes Apel, Timm Fredebold,
Sharon Funke, Benjamin Gnauk,
Janine Hellriegel, René Hoch,
Constanze Klaus, Michéle Sprejz,
Felix von Zadow
LFB – D04076
01. März 2012
3
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informatikstandards
Inhaltsbereich: Algorithmen
Schülerinnen und Schüler aller Jahrgangsstufen
 kennen Algorithmen zum Lösen von Aufgaben und Problemen aus verschiedenen
Anwendungsgebieten und lesen und interpretieren gegebene Algorithmen,
Schülerinnen und Schüler der
Jahrgangsstufen 5 - 7
Schülerinnen und Schüler der
Jahrgangsstufen 8 - 10
• benennen und formulieren
Handlungsvorschriften aus dem
Alltag
• lesen und verstehen Handlungsvorschriften für das Arbeiten mit
Informatiksystemen
• interpretieren Handlungsvorschriften korrekt und führen
sie schrittweise aus
• überprüfen die wesentlichen
Eigenschaften von Algorithmen
• lesen formale Darstellungen von
Algorithmen und setzen sie in
Programme um
Beilage zu LOG IN, Heft 150/151 (2008), www.informatikstandards.de
LFB – D04076
01. März 2012
4
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informatikstandards
noch Inhaltsbereich: Algorithmen
Schülerinnen und Schüler aller Jahrgangsstufen
 entwerfen und realisieren Algorithmen mit den algorithmischen Grundbausteinen und
stellen diese geeignet dar.
Schülerinnen und Schüler der
Jahrgangsstufen 5 - 7
Schülerinnen und Schüler der
Jahrgangsstufen 8 - 10
• benutzen die algorithmischen
Grundbausteine zur Darstellung
von Handlungsvorschriften
• entwerfen Handlungsvorschriften
als Text oder mit formalen
Darstellungsformen
• entwerfen und testen einfache
Algorithmen
• stellen die algorithmischen
Grundbausteine formal dar
• verwenden Variablen und
Wertzuweisungen
• entwerfen, implementieren und
beurteilen Algorithmen
• modifizieren und ergänzen
Quelltexte von Programmen nach
Vorgaben
Beilage zu LOG IN, Heft 150/151 (2008), www.informatikstandards.de
LFB – D04076
01. März 2012
5
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informatikstandards
www.informatikstandards.de
Problem:
Welche Werkzeuge sind
für den Schulunterricht
geeignet?
LFB – D04076
01. März 2012
6
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informatikstandards
www.informatikstandards.de
Werkzeuge zum Inhaltsbereich Algorithmen
(alphabetisch geordnet, zur Zeit eingetragen)
ADT (Lern- und Übungstool, Klassenstufen 11 – 13)
Brückenbauen (Lernsoftware, Klassenstufen 8 – 10)
Cryptool (Lernsoftware, Klassenstufen 7 – 13)
Disk (Beispielprogramm, Klassenstufen 6 – 7)
EOS objekt (einfache objektorientierte Sprache, Klassenstufen 6 – 9)
Hamstersimulator (Programmierumgebung, Klassenstufen 5 – 10)
K-Sat (Lernsoftware, Klassenstufen 11 – 13)
Es fehlen u.a.:
Krypto-Tool (Lernsoftware, Klassenstufen 7 – 10)
Kryptographie (Lern- und Übungsapplets, Klassenstufen 8 – 13)
LEO (Lernprogramm, Softwareentwicklungsumgebung, Klassenstufen 11 – 13)
Logo
Kara
Karol
NSD-Tool (Tool zur Erstellung von Struktogrammen, Klassenstufen 5 – 13)
Numerische Verfahren (Applet, Klassenstufen 11 – 13)
Pascal-Visualisierung PaVi (Visualisierungstool, Klassenstufe 8 – 10)
Pi-Textsuche (Lernsoftware, Klassenstufen 5 – 7)
Puck (visuelle Programmiersprache, Klassenstufen 7 – 11)
Quicksort (Lernsoftware, Klassenstufen 11 – 13)
Scratch (Programmiersoftware, Klassenstufen 5 – 11)
Visis (Lernsoftware zur Arbeitsweise eines Mikroprozessors, Klassen 11 – 13)
LFB – D04076
01. März 2012
7
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informatikstandards
LFB – D04076
01. März 2012
www.informatikstandards.de
8/64
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informatikstandards
Ausgewählte wissenschaftliche Arbeiten zur 1. Staatsprüfung
 T. Durda: PISA – Aufgaben im Themenbereich „Sprachen und Automaten“ - ein Beitrag
zur Ausarbeitung von Bildungsstandards im Fach Informatik (September 2006) –
s. auch: T. Durda: Evaluierungsmöglichkeiten von Bildungsstandards, LOG IN, Heft
146/147 (2007), S. 23 - 26
 Th. Stoll: Das Programmierwerkzeug „Scratch“ im Informatikunterricht an Mittelschulen,
insbesondere unter Berücksichtigung der Bildungsstandards Informatik (Oktober 2008)
s. LOG IN, Heft 154/155 (2008) S. 81 - 90 und Materialdatenbank auf dem
Sächsischen Bildungsserver:
http://www2.sn.schule.de/~matdb/matdb2/index.php?action=articleview&a=351
 W. Spalteholz: Standardisierung in der informatischen Bildung am Beispiel des Themengebiets
Rechnernetze (November 2007)
 M. Windisch: Untersuchung zur informatischen Bildung an Schulen Sachsens – die Bildungsstandards
und der Lehrplan: Vergleich, Interpretation, Kopplung und Umsetzbarkeit (August 2008)
Begleitung der Lernstandsanalyse zum Thema „Klassen und Objekte“ im Januar 2009
LFB – D04076
01. März 2012
9
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informatikstandards
Weitere Artikel zu dieser Problematik in der Zeitschrift LOG IN:
 P. Brichzin, H. Fischer, Th. Knapp, U, Heuer und M. Steinert: Aufgaben in Lehrbüchern
für Schülerinnen und Schüler der Sekundarstufe I, LOG IN, Heft 154/155 (2008)
S. 37 – 50
 K. Büttner, S. Kogel: Bildungsstandards und Hauptschüler, LOG IN, Heft 150/151
(2008), S. 32 – 36
 H. Fischer, Th. Knapp: Informatische Bildung einmal anders – Codieren, Chiffrieren,
Nachrichten übertragen mit Mittelschülerinnen und -schülern, LOG IN, Heft
150/151 (2008), S. 37 – 42
 Th. Knapp: Informatische Bildung an der Mittelschule – Eine Darstellung zur
Entwicklung der informatischen Bildung in Sachsen am Beispiel der Mittelschulen,
LOG IN, Heft 150/151 (2008), S. 19 – 25
LFB – D04076
01. März 2012
10
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informatikstandards
Weitere Artikel zu dieser Problematik in der Zeitschrift LOG IN:
 L. Kohl, M. Fothe: Algorithmen aus einer anderen Perspektive – Ein Vorschlag für ein
Kompetenzmodell zum Inhaltsbereich ,,Algorithmen“ der ,,Bildungsstandards
Informatik“, LOG IN, Heft 146/147 (2007), S. 20 – 22
 H. Neupert, H. Rohland, Modellierung der Datenbasis von Datenbanken –
Modellierungsaspekte bei der Behandlung von Datenbanksystemen in der
Sekundarstufe I, LOG IN, Heft 146/147 (2007), S. 27 – 35
 H. Puhlmann, St. Friedrich: Die Standards – und wie weiter? – Zur Beurteilung von
Aufgaben für Unterricht und Test, LOG IN, Heft 146/147 (2007), S. 16 – 19
 R. Romeike: Animationen und Spiele gestalten – Ein kreativer Einstieg ins
Programmieren, LOG IN, Heft 146/147 (2007), S. 36 – 44
Vortrag auf der INFOS 2009:
Katrin Büttner, Thomas Knapp, Steffen Friedrich: Untersuchungen zu informatischen
Kompetenzen in Sachsen – eine empirische Studie, in: Bernhard Koerber (Hrsg.): Zukunft
braucht Herkunft, 25 Jahre „INFOS – Informatik und Schule“, INFOS 2009, 13. GIFachtagung Informatik und Schule, 21. – 24. September 2009, Berlin,
Proceedings, ISBN 978-3-88579-250-5
LFB – D04076
01. März 2012
11
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Beschreibung der Lernzielebenen
(s. Lehrplan)
Einblick gewinnen
Begegnung als grundlegende Orientierung, ohne
tiefere Reflexion
Kennen
über Kenntnisse und Erfahrungen aus einem
begrenzten Gebiet im gelernten Kontext verfügen
Übertragen
Kenntnisse und Erfahrungen in vergleichbaren
Kontexten anwenden
Beherrschen
Handlungs- und Verfahrensweisen routinemäßig
gebrauchen
Anwenden
Kenntnisse und Erfahrungen in unbekannten Kontexten
anwenden
Beurteilen/Sich positionieren
begründete Sach- und/oder Werturteile entwickeln und
darstellen
Gestalten/Problemlösen
Handlungen selbständig planen, durchführen,
kontrollieren und zu neuen Deutungen und
Folgerungen gelangen
LFB – D04076
01. März 2012
12
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informatikunterricht in der Mittelschule
(s. Lehrplan)
Allgemeine fachliche Ziele
 Aneignen von Strategien und Methoden des Umgangs mit Informationen und Daten
 Nutzen von Informatiksystemen und Auseinandersetzung mit deren Wirkung auf
Individuum und Gesellschaft
 Verwenden von informatischen Modellen und Modellierungstechniken
Die Schüler nutzen Modelle zielgerichtet. Sie gebrauchen Fachbegriffe sicher und können diese in die Fachsystematik
einordnen. (s. Klasse 8)
 Nutzen von Problemlösestrategien
Die Schüler modellieren und implementieren Lösungen zu einfachen Problemen. (s. Klasse 8)
Lernbereich 2, Klasse 8:
Informationen verarbeiten: Modell – Algorithmus – Lösung
17 Ustd.
Wichtig: Auswahl einer schülergerechten Software (EOS, Karol, Kara, Logo, Scratch, …)!
„Entscheidungen über eine zweckmäßige zeitliche Reihenfolge der Lernbereiche innerhalb
einer Klassenstufe bzw. zu Schwerpunkten innerhalb eines Lernbereiches liegen in der
Verantwortung des Lehrers. Zeitrichtwerte können, soweit das Erreichen der Ziele
gewährleistet ist, variiert werden.“
Quelle: Lehrplan Mittelschule, SMK 2004, S. I (Aufbau und Verbindlichkeit der Lehrpläne)
LFB – D04076
01. März 2012
13
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informationen verarbeiten: Modell – Algorithmus – Lösung
Kennen grundlegender Programmstrukturen
 Begriff: Algorithmus (allgemeingültig, ausführbar, eindeutig, endlich)
 Programmstrukturen: Folge, Wiederholung, Verzweigung
?
 eine Darstellungsform (z.B. Struktogramm, Programmablaufplan,
Quelltext in einer Programmiersprache)
EOS
Beherrschen der Umsetzung des Modells an einfachen Beispielen
Kara
Kennen des Problemlöseprozesses
Karol
 Analyse, Entwurf, Algorithmus u. Programm, Kontrolle u. Dokumentation
 Lösen eines einfachen Problems unter Nutzung der Programmstukturen
Übertragen der Kenntnisse zum Problemlöseprozess
Logo
Scratch
 Selbständiges Lösen einfacher Probleme
 Kritisches Bewerten der Resultate
LFB – D04076
01. März 2012
14
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informationen verarbeiten: Modell – Algorithmus – Lösung
Aufgabe:
Zeichne einen Turm, der 4 mal so hoch wie breit ist und ein gleichseitiges Dreieck als Dach
hat.
MSW Logo
Analyse:
EOS
Scratch
4 übereinandergestapelte blaue Quadrate mit Seitenlänge s
1 gleichseitiges rotes Dreieck mit Seitenlänge s
LFB – D04076
01. März 2012
15
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informationen verarbeiten: Modell – Algorithmus – Lösung
MSW Logo
Schwerpunkt: Algorithmus zum Zeichnen eines Quadrates bzw. Dreiecks
pr zeichne_quadrat :s
; Prozedur zum Zeichnen eines Quadrates
wh 4 [vw :s re 360/4]
füllfarbe [0 0 255]
re 15 vw 2
fülle
rw 2 li 15
ende
pr zeichne_dreieck :s
; Prozedur zum zeichnen eines Dreiecks
wh 3 [vw :s re 360/3]
füllfarbe [255 0 0]
re 20 vw 5
fülle
rw 5 li 20
ende
pr zeichne_turm :s
; zeichnet Turm mit Breits s und Höhe 4 mal s
wh 4 [zeichne_quadrat :s vw :s]
; Positionierung für Dach
re 30
zeichne_dreieck :s
li 30
rw 4 * :s
Vorraussetzung:
ende
Schüler kennt Grundprozeduren wie
vw <.>, rw <.>,
re < >, li <.>,
wh <.> [<.>] u.a.
LFB – D04076
01. März 2012
16
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informationen verarbeiten: Modell – Algorithmus – Lösung
EOS
Schwerpunkt: Erzeugen von Objekten der Klassen QUADRAT, DREIECK und GRUPPE und
Anwenden von Methoden zur Änderung von Attributwerten
d.eckenSetzen(0,80, 10, 100, 20,80)
d.füllfarbeSetzen(rot)
// EOS 1.5 - Programm
f:FENSTER
q1:QUADRAT
q2:QUADRAT
q3:QUADRAT
q4:QUADRAT
d:DREIECK
turm:GRUPPE
turm.kopiere(q1)
turm.kopiere(q2)
turm.kopiere(q3)
turm.kopiere(q4)
turm.kopiere(d)
q1.linksObenSetzen(0,20)
q1.seitenlängeSetzen(20)
q1.füllfarbeSetzen(blau)
f.zeichne(turm)
q2.linksObenSetzen(0,40)
q2.seitenlängeSetzen(20)
q2.füllfarbeSetzen(blau)
q3.linksObenSetzen(0,60)
q3.seitenlängeSetzen(20)
q3.füllfarbeSetzen(blau)
q4.linksObenSetzen(0,80)
q4.seitenlängeSetzen(20)
q4.füllfarbeSetzen(blau)
LFB – D04076
01. März 2012
17
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Informationen verarbeiten: Modell – Algorithmus – Lösung
Scratch
Schwerpunkt: Algorithmus zum
Zeichnen eines Quadrates bzw.
Dreiecks
LFB – D04076
01. März 2012
18
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Klassen und Objekte
Merksatz 1: Eine Objekt ist eine identifizierbare Einheit unserer Umwelt oder unseres
Denkens. Es wird beschrieben durch seine Attribute mit dem jeweils
zugehörigen Attributwert.
Merksatz 2: Eine Klasse ist ein Bauplan für gleichartig strukturierte Objekte. Sie wird
beschrieben durch ihre Attribute mit den zugehörigen Attributwertebereichen
und ihren Methoden.
Bemerkung 1: Alle Objekte, die aus einer Klasse erzeugt wurden, haben die gleichen
Attribute, aber meist unterschiedliche Attributwerte.
Bemerkung 2: Alle Objekte, die aus einer Klasse erzeugt wurden, verfügen über die
gleichen Methoden.
Bemerkung 3: Mit den Methoden werden Attributwerte verändert.
Grundwissen Informatikunterricht auf dem SBS (Helmar Fischer,Thomas Knapp)
LFB – D04076
01. März 2012
19
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Klassen und Objekte
Wichtig: Klasse ist immer etwas „abstraktes“, ein Objekt ist immer etwas „konkretes“
Mögliche Darstellungsformen:
- Verbale Beschreibung
- Mindmap
- Vereinfachter UML-Standard
- Punktnotation
In der LSA „Klassen und Objekte“ wurde genau diese Thematik behandelt. Die Ergebnisse
der LSA wurden auf der INFOS 2009 in Berlin vorgestellt.
Zur Zeit ist eine LSA „Datenbanken“ in Vorbereitung, die auf die gleiche Weise durchgeführt
werden wird.
LFB – D04076
01. März 2012
20
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Darstellung von Klassen und Objekten
Vereinfachte Unified Modelling Language - Darstellung:
UML-Darstellung:
Objekt
Klasse
KLASSENNAME
objektname: KLASSENNAME
attribut1_name:
Wertebereich
attribut1_name =
Wert
attribut2_name:
Wertebereich
attribut2_name =
Wert
…:
..., …, …
…:
..., …, …
methode1_name()
methode1_name()
…
…
Wichtige Regeln:
• Klassennamen in Großbuchstaben (ohne Umlaute u.ä.!)
• Objektnamen, Attributnamen und Methodennamen in Kleinbuchstaben (ohne Umlaute u.ä.!)
Bemerkung: Ist ein Attributwert eine Zeichenkette, so kann diese Zeichenkette durchaus Umlaute oder ein ß enthalten.
LFB – D04076
01. März 2012
21
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Darstellung von Klassen und Objekten
Beispiel aus Vorlesung „Anwendersysteme – Teil: Programmiersysteme“
UML-Darstellung:
Klasse
Objekt
SCHALTFLAECHE
b_loeschen : SCHALTFLAECHE
fenster:
…, …
fenster =
“hf
beschriftung:
..., …
beschriftung =
[Alles loeschen]
x_koord_l_o_ecke:
0, 1, ...
x_koord_l_o_ecke =
20
y_koord_l_o_ecke:
0, 1, ...
y_koord_l_o_ecke =
120
breite:
0, 1, ...
breite =
90
hoehe:
0, 1, ...
hoehe =
20
prozeduraufruf:
...
prozeduraufruf =
[loeschen]
schaltflaeche_erzeugen()
schaltflaeche_erzeugen()
schaltflaeche_entfernen()
schaltflaeche_entfernen()
Logo-Grundprozedur - MSW Logo (engl.):
buttoncreate "hf
zugehöriges
Fenster
LFB – D04076
01. März 2012
"b_loeschen
Name des
Objektes
[Alles loeschen]
Beschriftung
des Objekts
x und y-Koordinate
der linken oberen Ecke
22
20 120
90
Breite und Höhe
des Objekts
20 [loeschen]
Prozeduraufruf
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Programmierparadigmen
Imperative
Programmierung
Zentraler Begriff
Funktionale
Programmierung
Logische
Programmierung
Befehl (Anweisung,
insbesondere auch:
Wertzuweisung)
Variable als NameWert-Paar
Funktion
Ein Programm ist
Folge von Befehlen
Eine Sammlung
ineinander eingesetzter
Funktionen
Eine Sammlung von
Fakten und Regeln
Beispiele
ALGOL, FORTRAN,
BASIC, PASCAL, aber
auch Scriptsprachen
wie JavaScript, php
LISP, LOGO, SCHEME,
HASKALL, CAML,
MIRANDA, usw.
PROLOG
Fakt, Regel
Keine Trennung von
Programm und Daten!
und auch:
Turtle-Grafik in Logo,
Karol u.a.
Das Paradigma „Objektorientierung“ liegt quer zu den obigen Paradigmen:
Die Objektorientierung ist eine Entwurfsmethode:
OOAnalyse – OOEntwurf – OODesign – OOProgrammierung
LFB – D04076
01. März 2012
23
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Programmierparadigmen
Wichtig:
Ziel der Objektorientierung ist es u.a. sogenannte „vordefinierte Klassen“ zu benutzen.
Das bedeutet:
Wenn man ein Objekt einer vordefinierten Klasse erzeugt, kann man sofort auch die für
diese Klasse festgelegten Methoden nutzen und muss diese nicht selbst programmieren.
(Beispiel: Ein Objekt der Klasse „Date“ in JavaScript)
Bei der Definition eigener Klassen muss man folgende Schritte tun:
-
Klassennamen festlegen
-
Attributnamen festlegen
-
Methodennamen und formale Parameter festlegen
-
Methoden programmieren
Für die Programmierung der Methoden werden Kenntnisse insbesondere der imperativen
aber auch der funktionalen Programmierung benötigt.
LFB – D04076
01. März 2012
24
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmus
Im Duden Informatik (V. Claus, A. Schwill, Dudenverlag, Mannheim, Leipzig,
Wien, Zürich, 1993) ist definiert:
„Unter einem Algorithmus versteht man eine Verarbeitungsvorschrift, die so
präzise formuliert ist, dass sie von einem mechanisch oder elektronisch
arbeitenden Gerät durchgeführt werden kann. Aus der Präzision der
sprachlichen Darstellung des Algorithmus muss die Abfolge der einzelnen
Verarbeitungsschritte eindeutig hervorgehen. Hierbei sind Wahlmöglichkeiten
zugelassen. Nur muss dann genau festliegen, wie die Auswahl erfolgen soll.“
Für den Informatikunterricht in der Sekundarstufe 1 ist folgender Merksatz
geeignet:
„Ein Algorithmus ist eine endliche Folge aus elementaren, eindeutigen und
ausführbaren Anweisungen.“
Quelle:
P. Brichzin, U. Freiberger, K. Reinold, A. Wiedemann:
Grundlagen der Informatik, Oldenburg Schulbuchverlag GmbH, München,
Düsseldorf, Stuttgart, 2005, ISBN 3-486-00098-5
LFB – D04076
01. März 2012
25
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmus
Ein Algorithmus ist

allgemeingültig

ausführbar

eindeutig

endlich
Dieses Skript ist – streng
genommen – kein
Algorithmus, da nicht
allgemeingültig.
pr zeichne_quadrat :s
; Prozedur zum Zeichnen eines Quadrates
wh 4 [vw :s re 360/4]
füllfarbe [0 0 255]
re 15 vw 2
fülle
Die Logo-Prozedur hat
rw 2 li 15
alle vier genannten
ende
Eigenschaften.
LFB – D04076
01. März 2012
26
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmus
Einen Algorithmus kann man beschreiben

mit Worten der Umgangssprache als Folge von Befehlen oder mittels funktionaler
Zusammenhänge

mittels eines Programmablaufplanes

mittels eines Struktogrammes

durch ein Programm in einer Programmiersprache
-> Übung in der nächsten Doppelstunde
(Beispiel: Handlungsablauf beim Telefonieren)
LFB – D04076
01. März 2012
27
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmus
Beispiel: Zeichnen eines Quadrates
Mit Worten der Umgangssprache als Folge von Befehlen:
- Erfrage die Anzahl x der Schritte
- Wiederhole 4 mal: gehe x Schritte vorwärts und drehe dich 90 Grad nach rechts
PAP:
Struktogramm:
Erfrage Anzahl x der Schritte
Wiederhole 4 mal
Gehe x Schritte vorwärts
Drehe dich 90° nach rechts
LFB – D04076
01. März 2012
28
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmus
Beispiel: Zeichnen eines Quadrates
Programm:
LFB – D04076
01. März 2012
pr zeichne_quadrat :s
; Prozedur zum Zeichnen eines Quadrates
wh 4 [vw :s re 360/4]
füllfarbe [0 0 255]
re 15 vw 2
fülle
rw 2 li 15
ende
29
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmische Grundstrukturen
In der imperativen Programmierung ist die einzelne Anweisung (Befehl) der zentrale
Begriff. Diese Anweisungen werden in algorithmischen Grundstrukturen
(Kontrollstrukturen) angeordnet.
Jedes in einer imperativen Sprache geschriebenes Programm setzt sich aus den
folgenden algorithmischen Grundstrukturen zusammen, die auch beliebig ineinander
eingesetzt werden können:
-
Folge (Sequenz)
-
Wiederholung (Zyklus oder Schleife)
-
Verzweigung (Alternative und Mehrfachauswahl)
Diese Grundstrukturen gab es schon in ALGOL und FORTRAN und sie sind auch heute in
jeder imperativen Programmiersprache zu finden, so u.a. in PASCAL, aber auch in Java
und den Scriptsprachen JavaScript und php!
-> Diese Grundstrukturen gehören heute zur Allgemeinbildung wie das „Kleine 1 X 1“ in
der Mathematik!
LFB – D04076
01. März 2012
30
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmische Grundstruktur „Folge“
Eine Folge (oder Sequenz) ist die einfachste algorithmische Grundstruktur. Sie besteht
aus einer Abfolge von einer oder mehreren Anweisungen, die in der gegebenen
Reihenfolge nacheinander ausgeführt werden.
Struktogramm
PAP (Programmablaufplan)
Anweisung 1
Anweisung 2
Anweisung 3
...
...
...
LFB – D04076
01. März 2012
31
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmische Grundstruktur „Wiederholung“
Eine Wiederholung (oder Zyklus) dient der Wiederholung einer einzelnen oder auch
mehrerer Anweisungen. Dabei unterscheidet man:
-
gezählte Wiederholung (Zählschleife)
-
Wiederholung mit vorangestelltem Test
-
Wiederholung mit nachgestelltem Test
Bei einer gezählten
Wiederholung werden die
Anweisungen innerhalb der
Wiederholung genau n mal
ausgeführt.
Struktogramm
PAP
wiederhole n mal
Anweisung 1
Anweisung 2
Anweisung 3
...
LFB – D04076
01. März 2012
32
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmische Grundstruktur „Wiederholung“
Bei einer Wiederholung mit vorangestelltem Test werden die Anweisungen ausgeführt,
so lange eine Bedingung erfüllt ist.
Es kann also passieren, dass die Anweisungen innerhalb der Wiederholung überhaupt
nicht ausgeführt werden.
Struktogramm
solange
PAP
Bed. erfüllt, wiederhole
Anweisung 1
Anweisung 2
Anweisung 3
...
LFB – D04076
01. März 2012
33
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmische Grundstruktur „Wiederholung“
Bei einer Wiederholung mit nachgestelltem Test werden die Anweisungen ausgeführt,
bis eine Bedingung erfüllt ist.
Die Anweisungen innerhalb der Wiederholung werden also mindestens einmal
werden.
Struktogramm
wiederhole
PAP
Anweisung 1
Anweisung 2
...
...
bis Bedingung erfüllt
LFB – D04076
01. März 2012
34
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmische Grundstruktur „Verzweigung“
Bei einer Verzweigung (Alternative) hängt es vom Erfüllt sein einer Bedingung ab, welche
Zweig ausgeführt wird. Dabei kann ein Zweig aus einer oder mehreren Anweisungen
bestehen, oder aber auch leer sein.
Struktogramm
PAP
Bedingung erfüllt
ja
Anweisung 1
nein
Anweisung 4
Anweisung 2
Anweisung 3
Anweisung 5
...
LFB – D04076
01. März 2012
35
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Algorithmische Grundstruktur „Mehrfachauswahl“
Bei einer Mehrfachauswahl können mehrere Bedingungen überprüft werden:
Struktogramm
PAP
falls erfüllt
Bed 1
...
Bed 2
Bed 3
...
...
...
...
sonst
...
...
...
...
...
...
LFB – D04076
01. März 2012
...
36
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Funktion
Definition: Eine Funktion ist eine Zuordnungsvorschrift, die den Eingangsdaten
genau einen Funktionswert zuordnet.
Eingabe
Verarbeitung
Ausgabe
Funktionsname
Für vordefinierte Funktionen ist (in Programmiersprachen, aber auch in Excel) festgelegt:
• Name der Funktion (zum Beispiel: sqrt oder wurzel)
• Anzahl, Art und Reihenfolge der Parameter (zum Beispiel: eine Zahl)
• Berechnungsvorschrift (zum Beispiel: Berechnung der Wurzel)
LFB – D04076
01. März 2012
37
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Prozedur
Definition: Eine Prozedur ist eine Anweisung an das System und ruft stets eine
entsprechende Wirkung (z.B eine Bildschirmausgabe) hervor.
Für vordefinierte Prozeduren ist festgelegt (in Programmiersprachen):
• Name der Prozedur (zum Beispiel vorwärts)
• Anzahl, Art und Reihenfolge der Parameter (zum Beispiel: eine Zahl)
• Verarbeitungsvorschrift (zum Beispiel: Turtle bewegt sich die angegebene Anzahl von
Pixel vorwärts)
Bemerkungen:
In der Literatur werden diese Begriffe häufig nicht sauber getrennt. Außerdem
treten in der Programmierpraxis oft „Mischformen“ auf.
LFB – D04076
01. März 2012
38
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Rekursion als Problemlösungsstrategie
Definition: Die Rekursion ist eine wichtige Strategie zum Lösen komplizierter Probleme.
Das zu lösende Problem wird dabei wiederholt auf das gleiche Problem mit
veränderten Parametern zurückgeführt (Rekursionsschritt) bis das Problem
einfach gelöst werden kann (Abbruchbedingung).
Bei einer echtrekursiven Funktion/Prozedur wird die Lösung des
Ausgangsproblems nach Erreichen der Abbruchbedingung schrittweise
ermittelt.
Bei einer endrekursiven (iterativen) Funktion/Prozedur liegt beim Erreichen
der Abbruchbedingung zugleich die Lösung des Ausgangsproblems vor.
Für die Lösung eines Problems mittels der Rekursion (lat: recurrere – zurücklaufen) wird
also immer benötig:
• ein Rekursionsschritt
• eine Abbruchbedingung
LFB – D04076
01. März 2012
39
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Rekursion als Problemlösungsstrategie
Beispiel: Berechne die Summe der ersten n positiven ganzen Zahlen.
Lösung:
1. Mit Worten der Umgangssprache:
Die Summe der ersten n (n>0) Zahlen erhält man, indem man n zur Summe der
ersten n-1 Zahlen addiert. (Rekursionsschritt)
Die Summe von 0 ist 0. (Abbruchbedingung)
2. Formulierung mit einer Funktion su(n):
su(0) = 0
für n = 0
su(n) = n + su(n-1)
für n > 0
(Abbruchbedingung)
(Rekursionsschritt)
Wichtig: In der funktionalen Programmierung gibt es keine Trennung zwischen
Programm und Daten!
LFB – D04076
01. März 2012
40
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Rekursion als Problemlösungsstrategie
Aufgabe aus einem Test (LOG IN, Heft 141/142, 2006, S. 54):
Ihre Lehrerin bzw. Ihr Lehrer zeigt Ihnen eine Matroschka. Definieren Sie den Begriff
„Matroschka“ auf rekursive Art.
Musterlösung:
Eine Matroschka besteht
aus einer Puppe, die eine
Matroschka enthält, oder es
ist die kleinste Matroschka.
LFB – D04076
01. März 2012
41
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Rekursion als Problemlösungsstrategie
Erweiterung der Aufgabenstellung:
Vor Ihnen steht eine geschlossene Matroschka, die 5 kleinere Puppen enthält.
Beschreiben Sie das Vorgehen zum Nebeneinander-Aufstellen aller 5 Puppen mittels
echter Rekursion und mittels Endrekursion.
LFB – D04076
01. März 2012
42
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Rekursion als Problemlösungsstrategie
Echte Rekursion:
Man öffnet nacheinander jede Puppe, stellt deren 2 Teile geöffnet ab und entnimmt die
nächste Puppe. Wenn die kleinste Puppe entnommen wurde, setzt man die jeweiligen
zwei Teile der größeren Puppen in umgekehrter Reihenfolge zusammen.
rekursiver Abstieg
Abbruchbedingung
erreicht
Rekursiver Aufstieg
Wichtige Bemerkung:
Erst nach dem Aufstieg aus der Rekursionstiefe liegt das Ergebnis vor!
LFB – D04076
01. März 2012
43
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Rekursion als Problemlösungsstrategie
Endrekursion (Iteration):
Man öffnet die größte Puppe, entnimmt die kleinere Puppe und setzt die beiden Teile der
größeren Puppe wieder zusammen. Dies wiederholt man, bis die kleinste Puppe
ausgepackt ist.
rekursiver Abstieg
Abbruchbedingung
erreicht
Wichtige Bemerkung:
Das Ergebnis liegt bereits beim Erreichen der Abbruchbedingung vor!
LFB – D04076
01. März 2012
44
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Problemlöseprozess
Lehramtsstudium LV AWS und LV AP I
Lehrplan Mittelschule
Problemanalyse
1. Analyse
Beschreibe das Problem.
Modellbildung
2. Entwurf
Beschreibe die Situationen, in die das Objekt kommen
kann.
Implementierung
3. Algorithmus
Plane den Ablauf.
4. Programm
Erstelle das Programm (die Skripte zu den Objekten).
Test und Modellkritik
5. Kontrolle
Teste dein Programm.
Entscheide.
6. Dokumentation
Beschreibe den Algorithmus und das Programm für
einen ungeübten Nutzer.
LFB – D04076
01. März 2012
45
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Problemlöseprozess
Komplexes Beispiel:
Es ist das nebenstehende Bild zu zeichnen:
Vorgehensmodell des Problemlösens:
1. Analyse:
4 gleiche Häuser unterschiedlicher Größe und eine Bildunterschrift
2. Entwurf:
Quadrat als Haus (ohne Dach), gleichseitiges Dreieck als Dach, quadratische Fester, rechteckige Tür
3. Algorithmus:
Beispiel: Zeichnen eines n-Ecks: wiederhole n mal: vorwärts :seite, rechts 360/:n
„Dazwischen“ muss der Igel neu positioniert werden
4. Programm: s. nächste Folien
5. Kontrolle: s. nächste Folien
6. Dokumentation
LFB – D04076
01. März 2012
46
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Problemlöseprozess
Zuerst werden die Prozeduren für das Zeichnen eines Dreiecks, eines Quadrates und
eines Rechtecks definiert:
pr zeichne_dreieck :s
; Prozedur zum Zeichnen eines gleichseitigen Dreiecks
wiederhole 3 [vw :s re 120]
ende
pr zeichne_quadrat :s
; Prozedur zum Zeichnen eines Quadrats
wiederhole 4 [vw :s re 90]
ende
pr zeichne_rechteck :h :b
; Prozedur zum Zeichnen eines Rechtecks
wiederhole 2 [vw :h re 90 vw :b re 90]
ende
Wichtig: Kein Bildschirmlöschen und keine Positionierung innerhalb dieser Prozeduren!
LFB – D04076
01. März 2012
47
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Problemlöseprozess
Jetzt werden diese Prozeduren in einer Prozedur zum Zeichnen eines Hauses in beliebiger
Größe verwendet:
pr zeichne_haus :g
; Prozedur, die ein Haus zeichnet
; Haus ohne Dach
zeichne_quadrat :g
; Positionierung des Igels
Aufruf: zeichne_haus 60
vw :g re 30
; Dach als Dreieck
zeichne_dreieck :g
; Positionierung des Igels
li 30 rw :g
re 90 vw :g/2
li 90
; Tuer als Rechteck
zeichne_rechteck :g/2 :g/4
; Positionierung des Igels
sh li 90 vw 3 * :g / 8 re 90 vw :g/4 sa
; Fenster als Quadrat
zeichne_quadrat :g/4
; Positionierung des Igels
sh vw :g/8 + :g/4 sa
; weiteres Fenster als Quadrat
zeichne_quadrat :g/4
; Positionierung des Igels
sh rw 5 * :g/8 li 90 vw :g/8 re 90 sa
ende
LFB – D04076
01. März 2012
48
Wichtig: Mit der letzten Positionierung
wird dafür gesorgt, dass der Igel wieder
in der linken unteren Ecke mit Blick
nach oben steht.
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Problemlöseprozess
Jetzt wird die Prozedur zeichne_haus in einer Prozedur zum Zeichnen einer Strasse
verwendet:
pr zeichne_strasse :g
; Prozedur, die Strasse mit 4 Haeusern ...
zeichne_haus :g
re 90 vw :g li 90
zeichne_haus :g - :g/5
re 90 vw :g - :g/5 li 90
zeichne_haus :g
re 90 vw :g li 90
zeichne_haus :g + :g/5
re 90 vw :g + :g/5 li 90
; Positionierung des Igels
sh home rw 20 re 90 sa
; Beschriftung
label "Strasse
ende
Aufruf: zeichne_strasse 60
LFB – D04076
01. März 2012
49
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Fachbegriffe: Problemlöseprozess
Abschließens ist zu diskutieren:
5. Kontrolle:
• Igel steht nach der Beschriftung
nicht in der Ausgangsstellung
(wird bei wiederholtem Aufruf
der von zeichne_strasse 60
sichtbar und ist auch im Quelltext
erkennbar)
• Eventuell ist ein zweiter
Parameter für eine variable
Anzahl von Häusern
wünschenswert.
5. Dokumentation
-> Hausaufgabe!!!
LFB – D04076
01. März 2012
50
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Übersicht über Werkzeuge
Anforderungen an eine schülergerechte Programmiersprache:
-
geringer Sprachumfang
-
klare grammatische Regeln (keine Ausnahmen)
Anforderungen an eine schülergerechte Programmierumgebung
-
überschaubare grafische Oberfläche
-
schrittweise Abarbeitung von Programmen möglich
-
Interaktion möglich
-
kostenfrei (GNU-Lizenz)
LFB – D04076
01. März 2012
51
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Übersicht über Werkzeuge
Einige geeignete Sprachen bzw. Programmierumgebungen: Karol
(http://www.schule.bayern.de/karol/)
Literatur:
P. Brichzin, u.a.: Grundlagen der Informatik, Oldenburg Verlag 2005
LFB – D04076
01. März 2012
52
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Übersicht über Werkzeuge
Einige Sprachen bzw. Programmierumgebungen: Kara
(http://www.swisseduc.ch/informatik/karatojava/kara/)
In der Welt von Kara gibt es:
- den Marienkäfer Kara
- Kleeblätter, die Kara aufsammeln oder
hinlegen kann
- Pilze, die Kara verschieben kann
- Baumstümpfe, die unbeweglich sind
Kara hat folgende Sensoren:
Kara versteht folgende Befehle und führt diese aus:
- ist vor mir ein Baumstumpf?
- mache einen Schritt vorwärts
- ist rechts von mir ein Baumstumpf?
- drehe um 90 Grad nach rechts
- ist links von mir ein Baumstumpf?
- drehe um 90 grad nach links
- ist vor mir ein Pilz?
- nimm ein Kleeblatt auf
- ist unter mir ein Kleeblatt?
- lege ein Kleeblatt hin
Quelle: Workshop von Heiko Neupert
LFB – D04076
01. März 2012
53
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Übersicht über Werkzeuge
Einige Sprachen bzw. Programmierumgebungen: Kara
(http://www.swisseduc.ch/informatik/karatojava/kara/)
Korrekte Lösung:
?
Quelle: Workshop von Heiko Neupert
LFB – D04076
01. März 2012
54
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Übersicht über Werkzeuge
Einige geeignete Sprachen bzw. Programmierumgebungen: MSW Logo
(http://www.softronix.com/logo.html - englische Version
bzw.: http://www.ph-ludwigsburg.de/logo.html - deutsche Version)
Quelle: http://www.sn.schule.de/~knapp/_material/logo/praesentation_workshop_logo.pdf
LFB – D04076
01. März 2012
55
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Übersicht über Werkzeuge
Einige geeignete Sprachen bzw. Programmierumgebungen: EOS
(Beispiel vom Autor Martin Pabst)
LFB – D04076
01. März 2012
56
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Übersicht über Werkzeuge
Einige geeignete Sprachen bzw. Programmierumgebungen: Scratch
(http://scratch.mit.edu/ , Materialdatenbank auf dem SBS , Seiten von Helmar Fischer)
LFB – D04076
01. März 2012
57
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Übersicht über Werkzeuge
Einige geeignete Sprachen bzw. Programmierumgebungen: Lazarus
(http://www.lazarus.freepascal.org/ und
http://wiki.lazarus.freepascal.org/Lazarus_Documentation/de )
LFB – D04076
01. März 2012
58
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Ausgewählte Literatur und Webquellen
- Brichzin, P., Freiberger, U., Reinold, K., Wiedemann, A.; Grundlagen der Informatik,
Oldenburg Schulbuchverlag GmbH, München Düsseldorf, Stuttgart, 2005, ISBN 3486-00098-5
- Koerber, B. (Hrsg.); Zukunft braucht Herkunft, 25 Jahre „INFOS – Informatik und
Schule“, INFOS 2009, 13. GI-Fachtagung Informatik und Schule, 21. – 24.
September 2009, Berlin, Proceedings, ISBN 978-3-88579-250-5
- Reichert, R., Nievergelt, J., Hartmann, W.; Programmieren mit Kara, 2. Auflage,
Springer Verlag, Berlin, Heidelberg, New York, 2005, ISBN 3-540-23819-0
- Schauer, H., Logo – Jenseits der Turtle, Springer Verlag, Wien New York, 1988,
ISBN 3-211-82017-5
LFB – D04076
01. März 2012
59
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Lehrpläne | Informatikstandards | Lernstandsanalyse im Januar 2009 | Fachbegriffe | Übersicht über Werkzeuge
Ausgewählte Literatur und Webquellen
- Fischer, H., Knapp, Th.; Grundwissen auf dem SBS:
http://www.sn.schule.de/~fischer/gw_neu/index.php?auswahl=darstellung
(19.11.2009)
- Lehrplan Gymnasium, Sächsisches Staatsministerium für Kultus, 2004:
http://www.sachsen-macht-schule.de/apps/lehrplandb/ (19.11.2009)
- Lehrplan Mittelschule, Sächsisches Staatsministerium für Kultus, 2004:
http://www.sachsen-macht-schule.de/apps/lehrplandb/ (19.11.2009)
- Materialdatenbank auf dem Sächsischen Bildungsserver (PäPIKK):
http://www2.sn.schule.de/~matdb/matdb2/?action=categorieview (19.11.2009)
- Materialien auf dem Schweizer Bildungsserver:
http://www.swisseduc.ch/informatik/karatojava/kara/ (19.11.2009)
- Webseite zu den Informatikstandards: www.informatikstandards.de (zuletzt
aktualisiert: November 2009)
LFB – D04076
01. März 2012
60
© K. Büttner, Th. Knapp, Fachberater Informatik
B. Timmermann, TU-Dresden
Herunterladen