27
www.Waldorf-IT.de Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse, 10. Klasse, eine Epoche Autor/Impressum: Norbert Harz, FWS Werder / Havel Geeignet für Klassenstufe: 9 und 10 Zeitdauer: 20 Doppelstunden Pädagogische Ziele: Erlernen grundlegender Kontrollstrukturen Pädagogischer Hintergrund: Nötige Vorbereitungen: Windows-Betriebssystem, Programm Robot Karol, benötigte Welten ertsellen Hilfsmittel: Computer Involvierbare Fächer: Mathematik, Informatik, Computerkunde Erscheinungsdatum: 2017 Letztes Überarbeitungsdatum: 9. November 2017 Die Grundidee zu Robot Karol ist schon recht alt. Sie entstammt dem Buch „Karel the Robot, A Gentle Intro- duction to the Art of Programming“ von Richard E. Pattis aus dem jahre 1981. Der Ansatz war (und ist), einen Roboter zu programmieren, der in einer „Bildschrimwelt“ lebt und welchem man bei der ‚Abarbeitung‘ der einzelnen Programmschritt direkt zusehen kann. Robot Karol folgt dabei der Tradition der „Mini-Languages“ –Programmiersprachen mit einem bewusst kleinem Sprachumfang, um den Einstieg in die Algorithmik zu erleichtern. Die hier vorgestellte Version stammt von Ondrej Krško (Slowakei) und Ulli Freiberger (München). Sie ist in eine zeitgemäße Form gebracht und läuft auf fast allen Windows Versionen 1 . In dieser Epoche erlernen die Schüler 2 die grundlegenden Kontrollstrukturen. Dabei spannt sich der Bogen von der sequenziellen Programmierung bis hin zu selbstdefinierten Anweisungen und Bedingungen. Sie lernen Zählschleifen, kopf- und fußgesteuerte Wiederholungen, Fallunterscheidungen und deren Verschachtelungen kennen. 1 Es sei darauf verwiesen, dass es auch eine betriebssystemunabhängige Java-Version gibt. 2 Es sei an dieser Stelle deutlich darauf hingewiesen, dass der Autor dieser Zeilen fortan in dieser Form schreiben wird. Hier ist jedoch jegliche Form von Diskriminierung ausgeschlossen. Einzig aus Gründen der Lesbarkeit bleibt der Autor bei dieser Form. Pädagogische Forschungsstelle Kassel 1

Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

www.Waldorf-IT.de

Robot Karol - Erlernen grundlegender Kontrollstrukturen

Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse, 10.Klasse, eine Epoche

Autor/Impressum: Norbert Harz, FWS Werder / Havel

Geeignet für Klassenstufe: 9 und 10

Zeitdauer: 20 Doppelstunden

Pädagogische Ziele: Erlernen grundlegender Kontrollstrukturen

Pädagogischer Hintergrund:

Nötige Vorbereitungen: Windows-Betriebssystem, Programm Robot Karol, benötigte Weltenertsellen

Hilfsmittel: Computer

Involvierbare Fächer: Mathematik, Informatik, Computerkunde

Erscheinungsdatum: 2017

LetztesÜberarbeitungsdatum:

9. November 2017

Kurzbeschreibung

Die Grundidee zu Robot Karol ist schon recht alt. Sie entstammt dem Buch „Karel the Robot, A Gentle Intro-duction to the Art of Programming“ von Richard E. Pattis aus dem jahre 1981.Der Ansatz war (und ist), einen Roboter zu programmieren, der in einer „Bildschrimwelt“ lebt und welchemman bei der ‚Abarbeitung‘ der einzelnen Programmschritt direkt zusehen kann. Robot Karol folgt dabei derTradition der „Mini-Languages“ –Programmiersprachen mit einem bewusst kleinem Sprachumfang, um denEinstieg in die Algorithmik zu erleichtern.Die hier vorgestellte Version stammt von Ondrej Krško (Slowakei) und Ulli Freiberger (München). Sie ist ineine zeitgemäße Form gebracht und läuft auf fast allen Windows Versionen1.In dieser Epoche erlernen die Schüler2 die grundlegenden Kontrollstrukturen. Dabei spannt sich der Bogenvon der sequenziellen Programmierung bis hin zu selbstdefinierten Anweisungen und Bedingungen. Sie lernenZählschleifen, kopf- und fußgesteuerte Wiederholungen, Fallunterscheidungen und deren Verschachtelungenkennen.

1Es sei darauf verwiesen, dass es auch eine betriebssystemunabhängige Java-Version gibt.2Es sei an dieser Stelle deutlich darauf hingewiesen, dass der Autor dieser Zeilen fortan in dieser Form schreiben wird. Hier ist

jedoch jegliche Form von Diskriminierung ausgeschlossen. Einzig aus Gründen der Lesbarkeit bleibt der Autor bei dieser Form.

Pädagogische Forschungsstelle Kassel 1

Page 2: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

INHALTSVERZEICHNIS www.Waldorf-IT.de

Inhaltsverzeichnis

1 Einleitung 5

2 Erste Schritte 6

2.1 Lineare Programmierung und vordefiniertet Anweisungen . . . . . . . . . . . . . . . . . . . . 6

2.2 Selbstdefinierte Anweisungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3 Bedingungem 9

3.1 ‚bekannte‘ Bedingungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3.2 selbstdefinierte Bedingungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3.3 Bedingte Anweisung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

4 Wiederholungen 11

4.1 Zählschleifen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4.2 Kopfgesteuerte Schleife . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4.3 Fußgesteuerte Schleife . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4.4 Endloswiederholungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5 Erweiterungen und Parameter 15

5.1 Erweiterungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

5.2 Parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

5.3 Vordefinierte Anweisungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

5.4 Selbstdefinierte Anweisungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

6 Einige –komplexere– Beispiele 19

6.1 Burgwall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

6.2 Zwei natürliche Zahlen addieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

6.3 Gleich hohe Mauer bauen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Pädagogische Forschungsstelle Kassel 2

Page 3: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

ABBILDUNGSVERZEICHNIS www.Waldorf-IT.de

Abbildungsverzeichnis

1 Robot Karol hat vier Quadrate gelegt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Beispiel für ein erstes sequenzielles Programm . . . . . . . . . . . . . . . . . . . . . . . . . 6

3 Beispiel für eine selbstdefinierte Anweisung . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

4 Beispiel für eine selbstdefinierte Anweisung . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

5 Welt, in der Robot Karol an einer Mauer entlang laufen soll . . . . . . . . . . . . . . . . . . . 10

6 Beispiel für eine selbstdefinierte Bedingung und deren Anwendung . . . . . . . . . . . . . . . 10

7 Welt, in der Robot Karol an der ‚Weltwand‘ entlang laufen soll . . . . . . . . . . . . . . . . . 10

8 Beispiel für eine Fallunterscheidung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

9 Beispiel für eine Zählschleife . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

10 Beispiel für ein Struktogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

11 Beispiel einer Bücherei . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

12 Beispiel für eine kopfgesteuerte Schleife . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

13 Struktogramm für kopfgesteuerte Schleifen . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

14 Beispiel für eine fußgesteuerte Schleife . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

15 Struktogramm einer fußgesteuerten Schleife . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

16 Ein weiteres Beispiel für eine fußgesteuerte Schleife . . . . . . . . . . . . . . . . . . . . . . 13

17 Das entsprechende Struktogramm... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

18 Robot Karol läuft ‚Wacht‘ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

19 Beispiel für eine Endlosschleife . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

20 Das entsprechende Struktogramm... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

21 Verschiedene Trenner im Einsatz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

22 Das Ergebnis des linken Programmcodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

23 Verschiedene Arten von Kommentaren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

24 Das Ergebnis des linken Programmcodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

25 Objekte und Methoden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

26 Einfügen einer Bibliothek und Aufruf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

27 Parameter bei vordefinierten Anweisungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

28 Erstes Beispiel für formale Parameter in einer selbstdefinierten Anweisung . . . . . . . . . . . 17

29 Das Ergebnis des linken Programmcodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Pädagogische Forschungsstelle Kassel 3

Page 4: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

ABBILDUNGSVERZEICHNIS www.Waldorf-IT.de

30 Zweites Beispiel mit einer verschachtelten Anweisung . . . . . . . . . . . . . . . . . . . . . 18

31 Das Ergebnis des linken Programmcodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

32 Robot Karol läuft ‚Wacht‘ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

33 Robot Karol addiert zwei Zahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

34 Robot Karol baut eine Mauer, die so hoch ist, wie die höchste Stelle . . . . . . . . . . . . . . 23

Pädagogische Forschungsstelle Kassel 4

Page 5: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

1. EINLEITUNG www.Waldorf-IT.de

1 Einleitung

Das Programm „Robot Karol“ kann man sich von verschiedenen Webseiten herunter laden. Eine erste und gutfundierte Anlaufstelle kann https://www.mebis.bayern.de/infoportal/faecher/mint/inf/robot-karol/ sein. Dort fin-det man zum einen immer die aktuellste Programmversion, sowie viele nützliche Tipps und auch schon fertigeLösungen zu Aufgaben.

In dem vorliegendem Text geht es um eine mögliche Unterrichtssequenz, die vom Autor selbst schon mehrfacherprobt wurde.

Völlig einsichtig und klar ist, dass es natürlich keinen ‚festen‘ Weg durch die Thematik geben kann. Vielmehrist der Weg natürlich durch die Vorlieben und Vorkenntnisse des Lehrers geprägt und er muss selbstredend auch‚seine‘ Klasse im Blick haben und so den Weg anpassen.

Pädagogische Forschungsstelle Kassel 5

Page 6: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

2. ERSTE SCHRITTE www.Waldorf-IT.de

2 Erste Schritte

2.1 Lineare Programmierung und vorde�niertet Anweisungen

Ein erster Weg in die Programmierung mit Robot Karol kann das spielerische Kennenlernen der Welt vonRobot Karol sein. Dazu können wir die Schüler zunächst ‚frei‘ programmieren lassen. Sie sollen und dürfendurch ‚herumexperimentieren‘ die Fähigkeiten des kleinen Lego - Männchen erfahren.Dazu verwenden wir zunächst die vordefinierten Anweisungen, wie zB:

• Schritt

• LinksDrehen

• RechtsDrehen

• Hinlegen

Um dieser Unterrichtssequenz dann eine Richtung zu geben, kann man folgende –einfache– Aufgabe stellen:Die Schüler sollen in einer 10 x 10 - Welt vier Quadrate aus jeweils vier Marken legen (vgl. Abbildung 1). DieQuadrate sollen dabei symmetrisch angeordnet sein.

Um diese Problem zu lösen, sollen die Schüler zunächst den Weg der linearen (also geradlinigen) Programmie-rung gehen. Sie schreiben dazu einfach alle Anweisung direkt untereinander (vgl. Abbildung 2).

Abbildung 1: Robot Karol hat vier Quadrate gelegtAbbildung 2: Beispiel für ein erstes sequenzielles Pro-gramm

Pädagogische Forschungsstelle Kassel 6

Page 7: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

2. ERSTE SCHRITTE www.Waldorf-IT.de

Bei dieser Art der Programmierung erkennen die meisten Schüler recht schnell, dass es es wohl recht einfach ist,den schon geschriebenen Quellcode per ‚Copy and Past‘ weiter zu benutzen. Hier können wir dann anknüpfen,und erfragen, ob es nicht „elegantere“ Varianten geben könnte, als das bloße kopieren des schon geschriebenenTextes.

In der Regel gelingt es den Schülern recht schnell dahin zu gelangen, dass man ja den schon mal geschriebenenText ‚irgendwie‘ noch mal verwenden könnte.

Hier führen wir dann die sogenannte selbstdefinierte Anweisung –quasi als parameterfreie Funktion– ein.

2.2 Selbstde�nierte Anweisungen

Schauen wir uns zunächst kurz den Aufbau einer selbstdefinierten Anweisung an.

Abbildung 3: Beispiel für eineselbstdefinierte Anweisung

Eine selbstdefinierte Anweisung wird immer mit dem Begriff „ANWEI-SUNG“ 3 begonnen. Danach folgt der Name der Anweisung, unter wel-chem sie später aufgerufen wird. Dieser Name kann frei vergeben wer-den, darf aber keine Leerzeichen enthalten. Es empfiehlt sich, einen aus-sagekräftigen Namen zu verwenden. Sie muss zwingend mit „*ANWEI-SUNG“ enden.Dazwischen werden die Befehle notiert, die durch diese Anweisung aus-geführt werden.

Im obigen Beispiel (Abbildung 3) ist gut zu sehen, wie die selbstdefinierte Anweisung dann aufgerufen werden.Dieses geschieht einfach dadurch, dass man an der Stelle, an der die Befehle ausgeführt werden sollen, denName der Anweisung schreibt.

Häufig ist an dieser Stelle das Phänomen zu beobachten, dass es den Schüler zuerst recht schwer fällt, zu er-kennen, dass man an dieser Aufgabe das legen der Quadrate so auslagern muss, dass ‚Robot Karol‘ zu Beginnmöglichst an der gleichen Stelle bei jedem Quadrat stehen soll.

3Die Groß- oder Kleinschreibung spielt hier keine Rolle. Der Autor hat jedoch der besseren Übersichtlichkeit an dieser Stelle dieGroßschreibung eingeführt.

Pädagogische Forschungsstelle Kassel 7

Page 8: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

2. ERSTE SCHRITTE www.Waldorf-IT.de

Abbildung 4: Beispiel für eine selbst-definierte Anweisung

In diesem Codeabschnitt (siehe linke Abbildung) ist recht gut zu erken-nen, dass sich bestimmte Anweisungen immer wieder wiederholen. Wirkönnen nun überlegen, ob es nicht eine ‚elegantere‘ Lösung gibt, umdiese Wiederholungen zu vermeiden.In der Regel kommen die Schüler recht schnell auf die Idee, an dieserStelle ‚irgendwie‘ zu schreiben, dass diese Sequenz vier mal wiederholtwerden müsste.Damit ergibt sich der Übergang zu den Zählschleifen.

Pädagogische Forschungsstelle Kassel 8

Page 9: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

3. BEDINGUNGEN www.Waldorf-IT.de

3 Bedingungen

Unter einer Bedingung verstehen wir eine ‚Anfrage‘ Robot Karols an seine Umgebung, die ein eindeutigesErgebnis liefert. Die Ergebnisse können entweder WAHR (also TRUE) oder FALSCH (also FALSE) sein.

3.1 bekannte` Bedingungen

Unser kleiner Robot Karol kennt von vornherein Bedingungen, die in allen möglichen Kontexten verwendetwerden können. Schauen wir uns zunächst an, welche vordefinierten Bedingungen es gibt4:

Bedingung Karol meldet WAHR,IstWand wenn er vor der Wand oder vor einem Qua-

der steht und in diese Richtung schaut

IstZiegel wenn er vor einem Ziegel oder Ziegelstapelsteht und in dessen Richtung schaut

IstMarke wenn er auf einer Marke steht

IstSüden, IstNorden, IstWesten, IstOsten wenn Karol in diese Richtung schaut

Ebenso ist es natürlich möglich auch die Verneinung aller Bedingungen zu benutzen.Als Beispiel sie hier ‚NICHT IstWand‘ genannt. Damit werden alle Varianten erfasst, bei denen ‚WENN Ist-Wand‘ nicht zutrifft.

Es sei hier kurz darauf verwiesen, dass wir in der allgemeinen Fachsprache hier von ‚Fallunterscheidung‘sprechen.

Ein kleines Beispiel wollen wir uns im Abschnitt Bedingte Anweisung näher ansehen.

3.2 selbstde�nierte Bedingungen

Eine weitere Variante, um Bedingungen zu definieren, sind sogenannte ‚selbstdefinierte Bedingungen‘.Ein häufiges Problem, über welches Schüler an dieser Stelle stolpern, ist, dass Robot Karol zum Anfnag undzum Ende der Prüfung der Bedingung wieder an der selben Stelle (also auf dem selben Feld) stehen muss undwieder in die selbe Richtung schauen muss.

Dann müssen im Programmcode der Bedingung die Wörter ‚WAHR‘ und ‚FALSCH‘ auftreten. Erst damit kannin geeigneter Weise festgelegt werden, welchen Wert die Bedingung zurück gibt.

Der Bedingung kann mit einem frei definierten Namen benannt werden. Dieser kann Buchstaben, Ziffern undden ‚Unterstrich‘ enthalten.

Schauen wir uns dazu ein kleines Beispiel an.

In diesem Beispiel soll Robot Karol solange gerade aus laufen, solange sich rechts von ihm eine Wand befindet.Wenn die Wand zu Ende ist, soll er einfach stehen bleiben.

4An dieser Stelle wird auf die Überwachung der Tragfähigkeit verzichtet. Dem geneigten Leser wird statt dessen die Literatur desHandbuches für diese Bedingungen empfohlen.

Pädagogische Forschungsstelle Kassel 9

Page 10: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

3. BEDINGUNGEN www.Waldorf-IT.de

Abbildung 5: Welt, in der Robot Karol an einer Mauerentlang laufen soll

Abbildung 6: Beispiel für eine selbstdefinierte Bedin-gung und deren Anwendung

Wie wir in Abbildung 6 gut sehen können, muss die ‚selbstdefinierte Bedingung‘ vor dem eigentlichem Pro-grammcode stehen. Ebenso können wir dort auch einen geeigneten Einsatz der Wahrheitswerte WAHR undFALSCH sehen.In dem Moment, in dem die selbstdefinierte Bedingung WAHR zurück gibt, geht Robot Karol einen Schrittvorwärts, sonst wird dieses Prozedere abgebrochen.

3.3 Bedingte Anweisung

An einem kleinen Beispiel sei nun noch einmal die Verwendung von Bedingungen gezeigt. In diesem Beispielsoll Robot Karol bis zur Wand laufen und wenn er diese erreicht hat, soll er sich nach links drehen und solangeweiter gehen, bis die Zählschleife (vgl. Zählschleifen) beendet ist.

Abbildung 7: Welt, in der Robot Karol an der ‚Welt-wand‘ entlang laufen soll

Abbildung 8: Beispiel für eine Fallunterscheidung

Pädagogische Forschungsstelle Kassel 10

Page 11: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

4. WIEDERHOLUNGEN www.Waldorf-IT.de

4 Wiederholungen

4.1 Zählschleifen

An den vorhergehenden Überlegungen haben wir ersehen können, dass es sinnvoll sein kann, bestimmte Co-dezeilen nicht beliebig oft untereinander zu schreiben, sondern diese durch eine festgelegte Art und Weise zuwiederholen. Dieses realisiert die Zählschleife.

An dieser Stelle bietet es sich an, über Struktogramme zu reden bzw. diese einzuführen5.

Abbildung 9: Beispiel für eineZählschleife

In Abbildung 9 ist gut zu erkennen, wie die Struktur einer Zählschleifeaussieht (Im Beispiel wurde die Zählschleife gleich in eine selbstdefi-nierte Anweisung integriert...).Jede Zählschleife wird mit einem „WIEDERHOLE X MAL“ eingelei-tet, wobei X für die Anzahl der Schleifendurchläufe steht.Danach folgen die Programmteile, welche wiederholt werden sollen.Die Zählschleife wird (wie gehabt) mit „*WIEDERHOLE“ beendet.

In Struktogrammschreibweise:

Abbildung 10: Beispiel für ein Struk-togramm

In der Abbildung 10 sehen wir eine grundlegende Eigenschaft eines kor-rekten Struktogramms. Jedes Struktogramm ist immer rechteckig.Wir können hier gut erkennen, wie Zählschleifen als Struktogramm dar-gestellt werden.

4.2 Kopfgesteuerte Schleife

Im nachfolgenden wollen wir uns einer weiteren Aufgabe zuwenden. Robot Katol hat die Aufgabe, Bücher ineinem Regalfach einer Bücherei abzulegen.

5Natürlich kann das Thema Struktogramme schon vorher behandelt worden sein, ausgelagert werden oder auch ganz weggelassenwerden. Dieses hängt selbstverständlich von der ganz konkreten Unterrichtssituation ab.

Pädagogische Forschungsstelle Kassel 11

Page 12: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

4. WIEDERHOLUNGEN www.Waldorf-IT.de

Abbildung 11: Beispiel einer Bücherei

In der nebenstehenden Abbildung sei eine erste Bücherei dargestellt.Jedes Fach wird hier durch eine ‚Lücke‘ in der Wand dargestellt. DasEnde des Buchregals wird für erste –einfache– Aufgaben durch eineMarke festgelegt.Eine erste mögliche Programmierung wird durch eine ‚feste‘ Büche-rei, d.h. die Struktur (hier der Abstand zu Robot Karol und die Anzahlder Fächer) ist bestimmt, realisiert.Hier kann z.B. die Zählschleife angewandt werden.

Nachfolgend wollen wir uns nun einer erweiterten Aufgabenstellung zuwenden.Nachdem die Schüler die Aufgabe mit einer bekannten Bücherei gelöst haben, können wir jetzt dazu überge-hen, dass wir eine Lösung suchen, bei der der Abstand des ‚Buchregals‘ zur Ausgangsposition Robot Karolsunbekannt ist.

Recht schnell gelangen Schüler an dieser Stelle dazu, Formulierungen zu finden, wie: „Robot Karol soll solangelaufen, bis er am Regal angekommen ist.“Hier kommen wir dann zur Kopfgesteuerten Schleife.

Abbildung 12: Beispiel für eine kopf-gesteuerte Schleife

In der nebenstehenden Abbildung ist gut zu erkennen, wie die Struktureiner kopfgesteuerten Schleife aussieht.

Jede kopfgesteuerte Schleife wird mit einem „WIEDERHOLE SOLANGE BEDINGUNG“ eingeleitet. Hiersteht BEDINGUNG selbstverständlich für die Bedingung, bei der die Schleife durchlaufen werden soll. Inunserem Beispiel wäre das ‚NichtIstWand‘Die Bedingung kann aber auch verneint werden, also in etwa: ‚NichtIstWand‘Danach folgen die Programmteile, welche wiederholt werden sollen.Die kopfgesteuerte Schleife wird (wie gehabt) mit „*WIEDERHOLE“ beendet.

In Struktogrammschreibweise:

Abbildung 13: Struktogramm für kopf-gesteuerte Schleifen

In der Abbildung 13 sehen wir in der Mitte den entsprechenden Ab-schnitt für die Struktogrammdarstellung einer kopfgesteuerten Schleife.

Pädagogische Forschungsstelle Kassel 12

Page 13: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

4. WIEDERHOLUNGEN www.Waldorf-IT.de

4.3 Fuÿgesteuerte Schleife

Im Unterschied zu der oben dargestellten kopfgesteuerten Schleife, wird die fußgesteuerte Schleife mindestenseinmal durchlaufen. Nachfolgenden wollen wir uns nur kurz einen möglichen Programmcode und das dazuge-hörige Struktogramm anschauen.

Abbildung 14: Beispiel für eine fußgesteuerte SchleifeAbbildung 15: Struktogramm einer fußgesteuertenSchleife

Es sei an dieser Stelle auch noch auf die fußgesteuerten Schleifen mit dem Abbruchkriterium „bis“ verwiesen.Auch hier wollen wir uns nachfolgend ein kurzes Beispiel dazu anschauen.

Wir können dort noch einmal sehr gut erkennen, warum wir an dieser Stelle von ‚fußgesteuerten Schleife‘sprechen. Die Bedingungen, bei der die Schleifen durchlaufen werden bzw. die zum Abbruch der Schleifeführen, stehen im Fuß der Schleife.

Abbildung 16: Ein weiteres Beispiel für eine fußge-steuerte Schleife

Abbildung 17: Das entsprechende Struktogramm...

4.4 Endloswiederholungen

Als eine letzte Schleifenart wollen wir uns die Endloswiederholungen anschauen. Dazu betrachten wir wiederein Beispiel.Im nachfolgenden soll zunächst nur der Ausschnitt einer Aufgabe betrachtet werden. In dieser ist Robot Karolals Burgwächter auf dem Wall einer Burg unterwegs. Dazu soll er zuerst auf den Wall ‚hinaufsteiegen‘ unddann auf diesem Wall ‚unendlich lange‘ Wache gehen.

Pädagogische Forschungsstelle Kassel 13

Page 14: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

4. WIEDERHOLUNGEN www.Waldorf-IT.de

Abbildung 18: Robot Karol läuft ‚Wacht‘

Die dafür zu verwendende Syntax ist recht einfach und setzt sich passend zu allen anderen Wiederholungenfort:

Abbildung 19: Beispiel für eine EndlosschleifeAbbildung 20: Das entsprechende Struktogramm...

Wie wir auch sehr leicht erkennen können, wird eine Endlosschleife mit den Worten „WIEDERHOLE IMMER“eingeleitet. Danach folgt der zu wiederholende Programmcode und die Schleife wird mit „*WIEDERHOLE“beendet.

Pädagogische Forschungsstelle Kassel 14

Page 15: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

5. ERWEITERUNGEN UND PARAMETER www.Waldorf-IT.de

5 Erweiterungen und Parameter

5.1 Erweiterungen

Wir wollen uns nun kurz einigen Besonderheiten der Programmiersprache Robot Karols zuwenden. Diese ori-entieren sich zum Teil an den Programmiersprachen wie PHP, Pascal, C und C++.

Trenner

Zwischen den einzelnen Anweisungen können außer einer Lücke und einer neuen Zeile auch Semikolons ver-wendet werden.

Abbildung 21: Verschiedene Trenner im Einsatz

Abbildung 22: Das Ergebnis des linken Programmco-des

Kommentare

Ein guter Programmcode enthält immer Kommentare, um ihn zum einen für andere lesbar zu machen und auchum ihn bei späterer Bearbeitung wieder verständlich in die Erinnerung zu bringen.Kommentare können an fast allen Stellen im Programm stehen und werden einzeilig durch zwei „//“ eingeleitet.Mehrzeilige Kommentare werden mit einer geschweiften Klammer begonnen und auch wieder beendet.

Abbildung 23: Verschiedene Arten von Kommentaren

Abbildung 24: Das Ergebnis des linken Programmco-des

Objekt Robot Karol

An dieser Stelle wollen wir den Programmierer von Robot Karol selbst zu Wort kommen lassen, um zu erläu-tern, was wir darunter verstehen: „Um zu verdeutlichen, dass die Ausführung einer Anweisung der Aufruf derentsprechenden Methode des Objekts bedeutet, kann man in Karol auch die „Punkt-Schreibweise“ für den Ob-jektbezug verwenden. Ebenso ist, aus didaktischen Überlegungen, die Verwendung von Klammern möglich.“

Pädagogische Forschungsstelle Kassel 15

Page 16: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

5. ERWEITERUNGEN UND PARAMETER www.Waldorf-IT.de

Abbildung 25: Objekte und Methoden

Bibliothek

Auch in Robot Karol ist es möglich, auf externe Bibliotheken zu verweisen. Diese werden durch den Befehl‚EINFÜGEN‘ hinzugefügt werden. Liegen die entsprechenden Bibliotheken im selben Verzeichnis, wie dasHauptprogramm, reicht alleine der Name der Bibliothek. Liegen die Bibliotheken in einem anderem Verzeich-nis, muss dieses im Verweis mit angegeben werden6

Abbildung 26: Einfügen einer Bibliothek und Aufruf

5.2 Parameter

In der Programmiersprache von Robot Karol kann man –ähnlich wie bei den ‚großen Schwestern‘ Parameterbei einigen Aufrufen verwenden.

5.3 Vorde�nierte Anweisungen

Bei folgenden vordefinierten Anweisungen und Bedingungen kann als Parameter eine Anzahl übergeben wer-den:

• Schritt

• Hinlegen

• Aufheben

• Warten

• IstZiegel

• NichtIstZiegel

• bei Überwachung der Tragfähigkeit: HatZiegel

6Der Autor hat mehrfach die Erfahrung gemacht, dass Verweise auf Pfadnamen mit Leerzeichen zu Problemen führen können. Esist daher ratsam, diese möglichst immer im selben Verzeichnis zu speichern.

Pädagogische Forschungsstelle Kassel 16

Page 17: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

5. ERWEITERUNGEN UND PARAMETER www.Waldorf-IT.de

Der Aufruf erfolgt recht einfach mit der entsprechenden Anzahl: ‚Schritt(10)‘.

Abbildung 27: Parameter bei vordefinierten Anweisungen

5.4 Selbstde�nierte Anweisungen

Auch bei selbstdefinierten Anweisungen und Bedingungen kann ein formaler Parameter verwendet werden.Dieser hat die fest vorgegebene Bezeichnung X. Innerhalb der selbstdefinierten Anweisungen und Bedingungenkann dann dieser Parameter bei allen unterstützen Anweisungen und Bedingungen verwendet werden (Siehedie Liste in Vordefinierte Anweisungen).

Eine Angabe des formalen Parameters in der Definitionszeile der Anweisung ist nicht nötig, aber aus didakti-schen Gründen empfehlenswert.

Der Aufruf der selbstdefinierten Anweisung oder der Bedingung muss dann mit einer natürlichen Zahl alsParameter erfolgen. Null ist dabei bei Bedingungen auch möglich.

Abbildung 28: Erstes Beispiel für formale Parameterin einer selbstdefinierten Anweisung

Abbildung 29: Das Ergebnis des linken Programmco-des

Pädagogische Forschungsstelle Kassel 17

Page 18: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

5. ERWEITERUNGEN UND PARAMETER www.Waldorf-IT.de

Auch Verschachtelungen sind möglich.

Abbildung 30: Zweites Beispiel mit einer verschach-telten Anweisung

Abbildung 31: Das Ergebnis des linken Programmco-des

Pädagogische Forschungsstelle Kassel 18

Page 19: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

6. EINIGE –KOMPLEXERE– BEISPIELE www.Waldorf-IT.de

6 Einige �komplexere� Beispiele

Im nachfolgenden sollen zum Abschluss einige –teilweise recht komplexe– Beispiele vorgestellt werden.

6.1 Burgwall

In dieser Aufgabe geht es darum, dass Robot Karol unendlich lang auf einem gegebenem Burgwall „Wacht“geht (vgl. Endloswiederholungen).

Abbildung 32: Robot Karol läuft ‚Wacht‘

Eine –mögliche– Beispiellösung sei hier gegeben.

Listing 1: Burgwall

1 / / p r ü f e , ob r e c h t s Wand2 Bedingung I s t R e c h t s Z i e g e l3 F a l s c h4 Rech t sDrehen5 Wenn I s t Z i e g e l Dann6 Wahr7 ∗Wenn8 LinksDrehen9 ∗Bedingung

10

11 / / p r ü f e , ob l i n k s Wand12 Bedingung I s t L i n k s Z i e g e l13 F a l s c h14 LinksDrehen15 Wenn I s t Z i e g e l Dann16 Wahr17 ∗Wenn18 Rech t sDrehen

Pädagogische Forschungsstelle Kassel 19

Page 20: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

6. EINIGE –KOMPLEXERE– BEISPIELE www.Waldorf-IT.de

19 ∗Bedingung20

21 Anweisung BaueMauerAb22 LinksDrehen23 LinksDrehen24 Wiederho le s o l a n g e i s t z i e g e l25 wenn i s t z i e g e l dann26 Aufheben27 ∗wenn28 ∗Wiede rho le29 Rech t sDrehen30 Rech t sDrehen31 ∗Anweisung32

33 / / Hauptprogramm34 Programm35 w i e d e r h o l e 3 mal36 s c h r i t t37 baueMauerab38 ∗ w i e d e r h o l e39 w i e d e r h o l e immer40 Wenn N i c h t I s t L i n k s Z i e g e l Dann41 Wenn N i c h t I s t R e c h t s Z i e g e l Dann42 S c h r i t t43 s o n s t44 Rech t sDrehen45 S c h r i t t46 ∗Wenn47 s o n s t48 LinksDrehen49 S c h r i t t50 ∗Wenn51 ∗Wiede rho le52 ∗Programm

6.2 Zwei natürliche Zahlen addieren

In diesem Beispiel geht es darum, dass Robot Karol ‚zwischen‘ zwei natürlichen Zahlen steht und diese addie-ren soll.

Dieses Beispiel ist den Beispielen entnommen, welche dem ‚Paket‘ Robot Karol beiliegen7.

7Es sei an dieser Stelle darauf verwiesen, dass die Lösung zur Zeit vom Programmautor selbst stammt.

Pädagogische Forschungsstelle Kassel 20

Page 21: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

6. EINIGE –KOMPLEXERE– BEISPIELE www.Waldorf-IT.de

Abbildung 33: Robot Karol addiert zwei Zahlen

Die –mögliche– Beispiellösung vom Programmautor sei hier gegeben.

Listing 2: Summe zweier Zahlen

1 { Programm Summe von zwe i Zah len2 Karol s t e h t zu Beginn vor der e r s t e n Z i f f e r und3 s c h a u t zum z w e i t e n Summanden4 ( e v e n t u e l l v o r h e r genügend o f t L inksDrehen m i t t e l s5 Bedingung I s t O s t e n )6

7 Das Programm z e i g t8 s e l b s t d e f i n i e r t e Anweisungen9 s e l b s t d e f i n i e r t e Bedingung

10 Anweisungen langsam und s c h n e l l11 Parameter ( zum B e i s p i e l wenn Z i e g e l ( 1 0 ) dann . . . )12 Bedingungen , d i e d i e A u s r i c h t u n g von Karol p r ü f e n13 ( I s t N o r d e n , I s t S ü d e n , I s t W e s t e n , I s t O s t e n )14

15 a = 002635543916 b = 000047038917 −−−−−−−−−−18 a+b = 0026825828 }19

20 Anweisung Umdrehen ;21 s c h n e l l22 LinksDrehen23 LinksDrehen24 langsam

Pädagogische Forschungsstelle Kassel 21

Page 22: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

6. EINIGE –KOMPLEXERE– BEISPIELE www.Waldorf-IT.de

25 ∗Anweisung26

27 { Eine Marke i s t 10 Z i e g e l wer t }28 Anweisung P r ü f e Ü b e r t r a g29 wenn I s t Z i e g e l ( 1 0 ) dann30 w i e d e r h o l e 10 mal Aufheben ∗ w i e d e r h o l e ;31 MarkeSetzen32 ∗wenn33 ∗Anweisung34

35 { Einen S t a p e l a u f den z w e i t e n v e r s e t z e n .36 Wenn s i c h e i n " Über t rag " e r g i b t , wird e i n e Marke g e s e t z t }37 Anweisung V e r s e t z e n38 s o l a n g e I s t Z i e g e l t u e39 Aufheben40 Umdrehen41 H i n l e g e n42

43 P r ü f e Ü b e r t r a g44

45 Umdrehen46 ∗ s o l a n g e47 ∗Anweisung48

49 { E r g i b t wahr , wenn r e c h t e r h a n d von Karol e i n e Wand i s t }50 Bedingung Is tWandRech t s51 s c h n e l l52 Rech t sDrehen53 wenn IstWand dann54 wahr55 s o n s t56 f a l s c h57 ∗wenn58 LinksDrehen59 langsam60 ∗Bedingung61

62 Anweisung Rechnen63 / / w i e d e r h o l e 9 mal64 s o l a n g e n i c h t I s tWandRech t s t u e65 V e r s e t z e n66 Rech t sDrehen67

68 wenn I s t M a r k e dann69 MarkeLöschen70 S c h r i t t

Pädagogische Forschungsstelle Kassel 22

Page 23: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

6. EINIGE –KOMPLEXERE– BEISPIELE www.Waldorf-IT.de

71 Rech t sDrehen72 H i n l e g e n73

74 P r ü f e Ü b e r t r a g75

76 Umdrehen77 s o n s t78 S c h r i t t79 LinksDrehen80 ∗wenn81 ∗ s o l a n g e82 ∗Anweisung83

84 / / Hauptprogramm85 { Karol z u r r i c h t i g e n S e i t e drehen }86 Programm87 s o l a n g e n i c h t I s t O s t e n t u e LinksDrehen ∗ s o l a n g e88 { Summe berechnen }89 Rechnen90 ∗Programm

6.3 Gleich hohe Mauer bauen

In dieser Aufgabe geht es darum, dass Robot Karol aus einer gegebenen ‚Zick-Zick‘ - Mauer eine gleich hoheMauer bauen soll.

Abbildung 34: Robot Karol baut eine Mauer, die so hoch ist, wie die höchste Stelle

Pädagogische Forschungsstelle Kassel 23

Page 24: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

6. EINIGE –KOMPLEXERE– BEISPIELE www.Waldorf-IT.de

Eine –mögliche– Beispiellösung sei hier gegeben.

Listing 3: Mauer bauen

1 / / Mauer a u f g e l i c h e max . Höhe b r i n g e n2 Bedingung I s t R e c h t s Z i e g e l3 S c h n e l l4 f a l s c h5 Rech t sDrehen6 wenn I s t Z i e g e l dann7 wahr8 ∗wenn9 LinksDrehen

10 Langsam11 ∗Bedingung12

13 Bedingung I s t L i n k s Z i e g e l14 S c h n e l l15 f a l s c h16 LinksDrehen17 wenn I s t Z i e g e l dann18 wahr19 ∗wenn20 Rech t sDrehen21 Langsam22 ∗Bedingung23

24

25 / / Großer S c h r i t t nach r e c h t s26 Anweisung R e c h t s S c h r i t t27 w i e d e r h o l e 2 mal28 Rech t sDrehen29 S c h r i t t30 ∗ w i e d e r h o l e31 ∗Anweisung32

33 / / Großer S c h r i t t nach l i n k s34 Anweisung L i n k s S c h r i t t35 w i e d e r h o l e 2 mal36 LinksDrehen37 S c h r i t t38 ∗ w i e d e r h o l e39 ∗Anweisung40

41 Anweisung Umdrehen42 LinksDrehen

Pädagogische Forschungsstelle Kassel 24

Page 25: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

6. EINIGE –KOMPLEXERE– BEISPIELE www.Waldorf-IT.de

43 LinksDrehen44 ∗Anweisung45

46 / / g e h t z u r üc k z u r Wand47 Anweisung SucheWandHinterDir48 Umdrehen49 w i e d e r h o l e s o l a n g e Nich t I s tWand50 S c h r i t t51 ∗ w i e d e r h o l e52 ∗Anweisung53

54 / / g e h t z u r üc k z u r Wand55 Anweisung SucheWandVorDir56 w i e d e r h o l e s o l a n g e Nich t I s tWand57 S c h r i t t58 ∗ w i e d e r h o l e59 ∗Anweisung60

61 Anweisung BaueEineReiheAb62 w i e d e r h o l e s o l a n g e Nich t I s tWand63 wenn I s t R e c h t s Z i e g e l dann64 Rech t sDrehen65 Aufheben66 LinksDrehen67 ∗wenn68 S c h r i t t69 ∗ w i e d e r h o l e70 SucheWandHinterDir71 Umdrehen72 ∗Anweisung73

74 Anweisung L e g e L i n k s Z i e g e l75 S c h n e l l76 LinksDrehen77 H i n l e g e n78 Rech t sDrehen79 Langsam80 ∗Anweisung81

82 / / dami t wi rd e i n e Marke g e l e g t und d i e Mauer83 / / e i n e Reihe a b g e b a u t . . .84 Anweisung ZaehlMarke85 SucheWandHinterDir86 R e c h t s S c h r i t t87 wenn N i c h t I s t M a r k e dann88 MarkeSetzen

Pädagogische Forschungsstelle Kassel 25

Page 26: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

6. EINIGE –KOMPLEXERE– BEISPIELE www.Waldorf-IT.de

89 s o n s t90 w i e d e r h o l e s o l a n g e I s t M a r k e91 S c h r i t t92 ∗ w i e d e r h o l e93 MarkeSetzen94 ∗wenn95 SucheWandHinterDir96 L i n k s S c h r i t t97 BaueEineReiheAb98 ∗Anweisung99

100 Anweisung S u c h e L e t z t e n Z i e g e l101 SucheWandVorDir102 Umdrehen103 w i e d e r h o l e s o l a n g e n i c h t I s t l i n k s Z i e g e l104 S c h r i t t105 ∗ w i e d e r h o l e106 MarkeSetzen107 SucheWandVorDir108 Umdrehen109 ∗Anweisung110

111 Programm112

113 / / gehe z u e r s t e i n e n S c h r i t t nach l i n k s114 LinksDrehen115 S c h r i t t116 Rech t sDrehen117 MarkeSetzen118 / / b loed , b r a u c h e n wi r a b e r f ü r s Ende . .119 S u c h e L e t z t e n Z i e g e l120 / / w i e de r s o l a n g e vor d i r k e i n e Wand i s t121 / / w i e d e r h o l e s o l a n g e Nich t I s tWand122 w i e d e r h o l e s o l a n g e Nich t I s tWand123 / / gehe z u e r s t zum e r s t e n Z i e g l r e c h t s von d i r124 wenn n i c h t I s t R e c h t s Z i e g e l dann125 S c h r i t t126 s o n s t127 / / h i e r S c h l e i f e übe r a l l e s128 ZaehlMarke129 ∗wenn130 ∗ w i e d e r h o l e131 Umdrehen132 w i e d e r h o l e s o l a n g e N i c h t I s t M a r k e133 S c h r i t t134 ∗ w i e d e r h o l e

Pädagogische Forschungsstelle Kassel 26

Page 27: Robot Karol - Erlernen grundlegender Kontrollstrukturen · Robot Karol - Erlernen grundlegender Kontrollstrukturen Tags: Kontrollstrukturen, Mini-Language, Programmieren, 9. Klasse,

6. EINIGE –KOMPLEXERE– BEISPIELE www.Waldorf-IT.de

135 w i e d e r h o l e136 L e g e L i n k s Z i e g e l137 S c h r i t t138 ∗ w i e d e r h o l e b i s I s t M a r k e139

140 ∗Programm

Pädagogische Forschungsstelle Kassel 27