==== Unterlagen ==== Hauptlehrmittel ist das Online-Lehrmittel [[http://www.tigerjython.ch|www.tigerjython.ch]]. Dazu können die Unterlagen als [[http://www.tigerjython.ch/index.php?inhalt_links=navigation.inc.php&inhalt_mitte=lernumgebung/pdf.inc.php|PDF]] heruntergealden werden. Ebenfalls verfügbar ist ein sogenanntes [[https://fginfo.ksbg.ch/dokuwiki/lib/exe/fetch.php?media=efinf:blcks2017:jython:tigerjython_cheatsheet.pdf|CheatSheet]] Tigerjython implementiert vieles von Python 2.7.1. Allerdings ist die [[http://jython.tobiaskohn.ch/download-de.html|Lernumgebung]] für TigerJython in Java geschrieben, das heisst, am benötigt das [[http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html|Java Development Kit]]. In den ersten 7 Wochen werden wir voraussichtlich die Kapitel 1, 2, 3 und evtl. 7 bearbeiten. Für jedes Kapitel gibt es obligatorische Aufgaben. Wer diese abgeschlossen hat, kann weiterführende Aufgaben erledigen oder jeweils ein eigenes Miniprojekt bearbeiten. === Obligatorische Aufgaben === * Kapitel 2 * 2.1: A1, (A2,) A3 * 2.2: A1 * 2.3: A1, A2, A4, A5, A6 * 2.4: A1, A3abcd * 2.5: A2, A3, A5 * 2.6: A1, A3, A4 * 2.7: A1, A2a * 2.8: A1 in zwei Varianten: Einmal mit ''break'' und einmal ohne ''break'', A4, wer fertig ist, kann bereits aus [[efinf:blcks2017:jython:zusatzaufgaben#3.2|Zusatzaufgabe 3.2]] die Primzahlaufgabe angehen. * 2.9: Dieses Kapitel ist optional. Rekursionen sind aber ein äusserst mächtiges Programmierwerkzeug. A1, A2 * 2.10 (nur Tastaturevents): Modifziere das Beispielprogramm, so dass es abbricht, falls die Turtle das Bild verlässt oder die Taste X gedrückt wird. Schaue dir dazu noch folgende [[efinf:blcks2017:jython:tipps#2.10|Tipps]] an. * Kapitel 3 * 3.1: A1 * 3.2: A1,( A2,) [[efinf:blcks2017:jython:zusatzaufgaben#3.2|Zusatzaufgabe 3.2]] * 3.3: A1, A2, A3 * 3.4: A1, [[efinf:blcks2017:jython:zusatzaufgaben#3.4|Zusatzaufgabe 3.4]] * 3.9: [[efinf:blcks2017:jython:tipps#A1|Tipp zu]] A1, [[efinf:blcks2017:jython:zusatzaufgaben#3.9|Zusatzaufgabe 3.9]] * 3.10: [[efinf:blcks2017:jython:tipps#3.10|A1]] Bis 14. 9 bis und mit Kapitel 3.10 ===== Lektionen ===== * Woche 33 * Dienstag: * Begrüssung / Vorstellung * Aufsetzten TigerJython * Erste Probleme in Kapitel 2 * Woche 34: Wochenziel bis und mit Kapitel 2.6 * Dienstag: * Konzept Iteration * Syntax / Kommentare * [[efinf:blcks2017:jython:lektionen#l3|Donnerstag]]: * Konzept Funktion und Parameter * Konsole und Variablen * Woche 35: Wochenziel bis und mit Kapitel 2.10 * [[efinf:blcks2017:jython:lektionen#l4|Dienstag]]: * While-Schlaufe (continue, break) * [[efinf:blcks2017:jython:lektionen#l5|Donnerstag]]: * Tastaturevents / Listener / Globale Variablen * Woche 36: Wochenziel bis und mit Kapitel 3.4 * [[efinf:blcks2017:jython:lektionen#l6|Dienstag]]: * Besprechung Aufgaben * Einführung for-schlaufen * Ganzzahl-Arithmetik * Strukturiertes Programmieren * [[efinf:blcks2017:jython:lektionen#l7|Donnerstag]]: * Strukturiertes Programmieren * Funktionen II * Woche 37: Wochenziel bis und mit Kapitel 3.10 * [[efinf:blcks2017:jython:lektionen#l8|Dienstag]]: * Bepsrechung Aufgaben: Effizienz * Einführung Listen * Donnerstag * Weiterarbeiten Listen * Zufallszahlen * Woche 38: Vorbereitung 2048 * [[efinf:blcks2017:jython:lektionen#l10|Dienstag]]: * Listen: Mutable und immutable Datentypen * Module: Eigene schreiben und Module importieren * Gruppen für 2048: Definition Teilprojekte * Lernziele und Inhalte Prüfung * [[efinf:blcks2017:jython:lektionen#l11|Donnerstag]]: * Scoping / Assignment * Lernziele * Programmieren/Erweitern 2048 * Test [[https://bldsg.sharepoint.com/sites/cl03-ksbg-el/courses/EF5b1/Abgabe/Forms/AllItems.aspx|Prüfungsabgabe]] * Woche 39: * [[efinf:blcks2017:jython:lektionen#l12|Dienstag: Prüfung]] * [[efinf:blcks2017:jython:lektionen#l13|Besprechung Prüfung]], 2048