1.1.1 Grundlegende Programmierkonzepte (z.B. Kontrollstrukturen, Variablen, Funktionen) kompetent anwenden
Unterrichtsmaterial zum Lernziel: Die Maturandinnen und Maturanden können grundlegende Programmierkonzepte (z.B. Kontrollstrukturen, Variablen, Funktionen) kompetent anwenden.
Weltbank-Indikatoren Projekt: Daten mit SQL in Python
In diesem umfassenden Programmierprojekt entwickeln die Lernenden eine eigene Python-Anwendung zur Analyse von Weltbank-Daten. Dabei wird eine SQLite-Datenbank mittels Python und SQL abgefragt, verarbeitet und interaktiv aufbereitet.
Roboterprogrammierung mit Python: Funktionen, Parameter und Code-Refactoring
Dieses Unterrichtsmaterial zeigt anhand eines Maqueen-Roboters mit Micro:bit, wie Python-Funktionen mit mehreren und optionalen Parametern sowie dem return-Statement eingesetzt werden. Zudem wird erklärt, wie man Code durch Modularisierung und Auslagerung in verschiedene Dateien refaktoriert.
GameGridKara 2.0 – Java lernen mit Kara
Dieses Unterrichtsmaterial bietet eine strukturierte Einführung in die Programmierung mit Java anhand der visuellen Umgebung von Kara dem Marienkäfer. Es deckt grundlegende Konzepte wie Kontrollstrukturen, Variablen, Methoden sowie objektorientierte Grundlagen ab und enthält zahlreiche Handouts sowie Lösungen.
Schleifen in Java mit Greenfoot
Dieses Unterrichtsmaterial führt in das Konzept von Schleifen (for- und while-Schleifen) in Java ein. Anhand von praktischen Beispielen und der Programmierumgebung Greenfoot lernen die Schülerinnen und Schüler, wiederkehrende Abläufe zu programmieren und Figuren zu zeichnen.
Mit Python-Schleifen und Listen zeichnen
Dieses Unterrichtsmaterial führt in die Nutzung von for-Schleifen und Listen in Python ein. Anhand von praktischen Programmieraufgaben mit der Turtle-Grafik lernen die Lernenden, über Sequenzen zu iterieren, Datentypen einzusetzen und die Länge von Listen zu ermitteln.
Funktionen in Python
Dieses Unterrichtsmaterial führt in das Konzept von Funktionen in Python ein. Es behandelt die Definition von Funktionen, Parameter, Rückgabewerte mit return sowie das Importieren von Modulen anhand praxisnaher Beispiele und Programmieraufgaben.
Zufall und Wahrscheinlichkeiten simulieren in Python
Anhand praktischer Programmieraufgaben in Python lernen Schülerinnen und Schüler, Zufallszahlen zu generieren und Wahrscheinlichkeiten durch Simulationen zu ermitteln. Dabei werden verschiedene Kontrollstrukturen wie Schleifen und Bedingungen angewendet, um spielerische Szenarien wie Würfelspiele auszuwerten.
Programmieren mit dem Micro:bit: Event-Loops, Funktionen und State Machines
Dieses Unterrichtsmaterial führt anhand von praktischen Micro:bit-Begebenheiten in Python in Programmierkonzepte wie Event-Loops, das return-Statement und Zustandsmaschinen ein. Die Lernenden erweitern bestehende Funktionen, fragen Tasten ab und setzen eigene Logiken um.
GreenfootKara – Java lernen mit Kara in der Greenfoot-Umgebung
Dieses Unterrichtsmaterial bietet einen praxisnahen und visuellen Einstieg in die Programmierung mit Java anhand der Roboter-Umgebung GreenfootKara. Über 16 bis 20 Lektionen hinweg werden grundlegende Programmierkonzepte wie Klassen, Objekte, Kontrollstrukturen und Methoden vermittelt.
Zweidimensionale Listen in Python
Dieses Unterrichtsmaterial führt in das Konzept von mehrdimensionalen Listen (Matrizen und Tabellen) in Python ein. Anhand von praktischen Beispielen, Programmierübungen und Aufgaben wie der Darstellung von Bildern als Pixel-Grids lernen Schülerinnen und Schüler, verschachtelte Schleifen und Referenzen in Python zu verstehen und anzuwenden.
Einführung in Variablen und Datentypen in Python
Dieses Unterrichtsmaterial führt in die Verwendung von Variablen, Wertzuweisungen und Benutzereingaben in Python ein. Anhand von Beispielen mit der Turtle-Grafik und Berechnungen wird gezeigt, wie Daten gespeichert, überschrieben und in andere Datentypen umgewandelt werden.
Werkstatt Mikrocontroller und Modelleisenbahn mit C++
Diese Unterrichtswerkstatt führt Schülerinnen und Schüler ohne Vorkenntnisse in die Mikrocontroller-Programmierung mit C++ und Arduino ein. Anhand von praktischen Projekten wie der Steuerung von Bauteilen und Modelleisenbahnen werden Grundlagen der Elektronik, Bedingungen, Funktionen und Sensorik vermittelt.
GameGridKara 2.0 – Learning Java with Kara
Dieses Unterrichtsmaterial führt spielerisch und visuell über die Programmierumgebung von Kara in die Programmiersprache Java ein. Es deckt Themen wie Kontrollstrukturen, Variablen, Methoden und objektorientierte Grundlagen anhand von praktischen Aufgaben und Szenarien ab.
Einführung in die Assemblersprache mit dem Little Man Computer
Dieses Unterrichtsmaterial führt in die Assemblersprache ein und zeigt anhand des Little Man Computers (LMC), wie grundlegende Programmierkonzepte, Labels, Verzweigungen, Schleifen und Algorithmen auf Maschinennahmen-Ebene umgesetzt werden. Die Lernenden können praktische Programmieraufgaben direkt im Assembler lösen.
Einführung in die Programmierung mit Java
Dieses Material führt grundlegend in den Begriff der Programmierung und formalisierter Sprachen ein. Anhand der Programmiersprache Java werden zentrale Programmierkonzepte sowie Methoden und Klassen für moderne Sprachen vermittelt.
Greenfoot: Einführung
Dieses Unterrichtsmaterial bietet eine praxisnahe Einführung in die Programmierumgebung Greenfoot mithilfe eines Marienkäfer-Szenarios. Die Lernenden lernen die Benutzeroberfläche kennen, erzeugen und manipulieren Java-Objekte, passen bestehenden Quellcode an und implementieren eigene Methoden.
Variablen in Java mit Greenfoot
Dieses Unterrichtsmaterial führt in das Konzept der Variablen ein, erklärt deren Typen, Namen und Werte anhand von Analogien und zeigt die praktische Anwendung in Java mit der Entwicklungsumgebung Greenfoot. Themen wie Deklaration, Zuweisung, Instanzvariablen und einfache Konsolenausgaben werden schrittweise vermittelt.
Verzweigungen in Java und Greenfoot
Das Unterrichtsmaterial führt in das Konzept von Verzweigungen (if-else, Bedingungen, logische Operatoren) anhand von Java und der Programmierumgebung Greenfoot ein. Es beinhaltet Erklärungen, Code-Beispiele, Code-Lesebereiche und praktische Aufgaben.
Methoden in Java und Greenfoot
Dieses Unterrichtsmaterial führt in das Konzept von Methoden in Java anhand der Entwicklungsumgebung Greenfoot ein. Anhand praktischer Aufgaben lernen die Lernenden, wie Code strukturiert, in Methoden ausgelagert, mit Übergabewerten flexibilisiert und mit Rückgabewerten versehen wird.
Objektorientierte Programmierung mit Java und Greenfoot
Das Unterrichtsmaterial führt in die objektorientierte Programmierung (OOP) anhand der Programmiersprache Java und der Lernumgebung Greenfoot ein. Es behandelt detailliert Themen wie Klassen und Instanzen, Konstruktoren, Methodenaufrufe, Interaktionen zwischen Objekten, Vererbung und das Casting von Datentypen.
Datenstrukturen in Java: Arrays und Collections
Dieses Unterrichtsmaterial behandelt grundlegende und fortgeschrittene Datenstrukturen in Java. Es werden Arrays, deren Handhabung sowie das Java Collection Framework mit ArrayLists und weiteren Datenstrukturen ausführlich erklärt.
Einführung in Schleifen mit Python und Turtle
Dieses Unterrichtsmaterial führt in das Konzept von for- und while-Schleifen in Python ein. Anhand von Turtle-Grafiken lernen die Schülerinnen und Schüler, geometrische Formen und Muster durch Code-Wiederholungen und Variablen zu zeichnen.
Funktionen und Parameter in Python mit Turtle-Grafik
Dieses Unterrichtsmaterial führt in das Konzept von Funktionen mit und ohne Parameter in Python ein. Anhand von praktischen Programmieraufgaben mit einer Turtle werden Funktionen definiert, verschachtelt und mit Argumenten aufgerufen.
Entscheidungen treffen: if ... else
Das Material führt in Python-Entscheidungsstrukturen mittels if-Anweisungen und if-else-Blöcken ein. Zudem werden logische Operatoren, Boolesche Algebra, der Modulo-Operator und der vorzeitige Ausstieg aus Schleifen mit break anhand praktischer Programmieraufgaben und Code-Beispielen behandelt.
Gamepad-Steuerung mit Python einbinden
Eine praxisorientierte Anleitung zur Installation des Python-Moduls `inputs` und zur Implementierung einer Gamepad-Steuerung für ein bestehendes Spielprojekt. Das Material zeigt konkret, wie Ereignisse ausgelesen und anstelle von Tastatureingaben in einer Hauptschleife verwendet werden.
Space Invaders in Python: Laser-Logik und Speicherbereinigung
Dieses Unterrichtsmaterial erklärt anhand der Entwicklung eines Space-Invaders-Spiels in Python (mit dem Turtle-Modul), wie Laser und Gegner durch Listen verwaltet, bewegt und bei Verlassen des Bildschirms mittels Garbage Collection wieder gelöscht werden. Die Lernenden verstehen die zugrundeliegende Programmierlogik und können Code-Beispiele nachvollziehen.
Code-Refactoring und Modularisierung am Beispiel eines Roboter-Projekts
Das Unterrichtsmaterial erklärt anhand eines Python-Roboterprojekts, wie langer Code durch die Verwendung von Funktionen und die Aufteilung auf mehrere Dateien übersichtlicher, lesbarer und wartbarer gestaltet werden kann. Die Schülerinnen und Schüler lernen dabei konkrete Prinzipien der Modularisierung kennen.
Rekursives Programmieren
Dieses Leitprogramm für das Gymnasium führt umfassend in das Konzept der Rekursion in der Informatik und Mathematik ein. Die Lernenden setzen sich intensiv mit rekursiven Programmierstrukturen auseinander und implementieren entsprechende Algorithmen.
Rekursion und Algorithmen in Python
Dieses Unterrichtsmaterial behandelt das Konzept der Rekursion anhand von Beispielen wie der Fakultätsfunktion, der Ackermann-Funktion und verschiedenen rekursiven Code-Snippets. Die Lernenden analysieren das Laufzeitverhalten, führen Rekursionen von Hand durch und implementieren Algorithmen in Python.
NumTrip-Game Projekt und Beurteilungskriterien
Dieses Unterrichtsmaterial beschreibt die Aufgabenstellung und die Beurteilungskriterien für ein Programmierprojekt, bei dem das Spiel NumTrip als Konsolenanwendung und anschliessend mit Pygame implementiert wird. Es beinhaltet Anforderungen an die Git-Historie, globale Datenstrukturen, Funktionshierarchien und die Dokumentation im Rahmen eines Blogs oder Wikis.
Daten speichern & laden in Python mit JSON
Dieses Unterrichtsmaterial erklärt anhand eines Spielbeispiels, wie Daten in Python permanent auf der Festplatte gespeichert und wieder geladen werden können. Dabei wird das JSON-Format und die Verwendung von Dictionaries als Datensammlung praxisnah vermittelt.
Funktionen in Python
Dieses Unterrichtsmaterial führt in die Grundlagen von Funktionen in Python ein. Es behandelt Funktionsdefinitionen, Parameter, Rückgabewerte und Standardwerte anhand konkreter Code-Beispiele und Programmieraufgaben.
Einführung in die while-Schleife mit Python Turtle
Dieses Unterrichtsmaterial führt anhand von Python und Turtle-Grafiken in die Verwendung von while-Schleifen ein. Die Lernenden vergleichen bedingte Wiederholungen mit for-Schleifen, lösen Programmieraufgaben und reflektieren unendliche Schleifen.
Zustandsmaschinen und endliche Automaten
Dieses Unterrichtsmaterial erklärt das Konzept von Zustandsmaschinen und endlichen Automaten am Beispiel einer Liftsteuerung. Es behandelt Zustände, Ereignisse, State-Event-Tabellen, Zustandsdiagramme sowie die konkrete Implementierung in Python.
Funktionen in TigerJython und Bestimmung des ggT
Diese Unterrichtseinheit führt in das Konzept von Funktionen in TigerJython ein und vertieft das Wissen anhand mathematischer Funktionen. Die Lernenden erfahren, wie Funktionen programmiert werden, und wenden sie direkt in zahlreichen Übungen an, mit einem Fokus auf die Berechnung des grössten gemeinsamen Teilers (ggT).
Programmieren des Spiels Tic Tac Toe in Java
Dieses Unterrichtsmaterial führt anhand der Entwicklung eines Tic-Tac-Toe-Spiels in Java in fortgeschrittene Programmierkonzepte wie GUIs mit AWT, Event Handling und File I/O ein. Es enthält Handouts, Quelltexte, Arbeitsblätter und Musterlösungen für den praktischen Einsatz.
3D-Graphikprogrammierung – Ein Leitprogramm mit Java
Dieses Leitprogramm führt Schülerinnen und Schüler mit Java-Vorkenntnissen in die Grundlagen der 3D-Graphikprogrammierung ein. Es behandelt mathematische und informatische Aspekte wie perspektivische Abbildungen, geometrische Transformationen und die Sichtbarkeit von Oberflächenpolygonen anhand konkreter Programmieraufgaben.
Kara – Programmieren mit endlichen Automaten
Das Lehrmittel führt Schülerinnen und Schüler ohne Vorkenntnisse spielerisch in die Grundlagen des Programmierens und endliche Automaten ein. Mithilfe des programmierbaren Marienkäfers 'Kara' in einer grafischen Umgebung werden elementare algorithmische Abläufe und logische Bedingungen vermittelt.
JavaKara – Programmieren mit Java
JavaKara bietet einen anschaulichen und einfachen Einstieg in die Programmierung mit Java anhand der Steuerung des Marienkäfers Kara. Das Material enthält Anleitungen, ein Skript sowie zahlreiche Aufgaben zu imperativen Programmierkonzepten, Schleifen, Verzweigungen und Arrays.
JavaKara: Einführung in Java
Dieses Unterrichtsmaterial führt in die Programmiersprache Java anhand der bekannten Spielwelt von Kara ein. Es bietet praktische Programmieraufgaben inklusive Musterlösungen und eine Bedienungsanleitung für einen reibungslosen Einstieg.
JavaKara: Einführung in Java
Dieses Material bietet eine Einführung in die Programmierung mit JavaKara in Eclipse, einschliesslich Code-Beispielen, Aufgaben und Lösungsvorlagen. Es zeigt, wie JavaKara-Programme gestartet, ausgeführt und mit dem Debugger getestet werden können.
Arbeitsblätter für JavaKara
Eine umfangreiche Sammlung von Arbeitsblättern und Aufgaben für den Einsatz von JavaKara im Informatikunterricht. Die Materialien decken Themen von grundlegenden Java-Programmierkonzepten wie Verzweigungen, Schleifen und Methoden bis hin zu fortgeschrittenen Konzepten wie Parametern, Rückgabewerten und Rekursion ab.
PythonKara – Programmieren mit Python
PythonKara bietet eine visuelle und intuitive Lernumgebung, um in die Programmiersprache Python einzusteigen. Anhand des Marienkäfers Kara werden grundlegende Programmierkonzepte wie Schleifen, Verzweigungen und Funktionen direkt anwendungsbezogen vermittelt.
RubyKara – Programmieren mit Ruby
Dieses Unterrichtsmaterial führt mithilfe der Programmierumgebung RubyKara in die imperativ-prozedurale Programmierung ein. Anhand des steuerbaren Marienkäfers Kara werden grundlegende Konzepte wie Funktionsaufrufe, Verzweigungen, Schleifen sowie eigene Methoden mit Variablen und Parametern vermittelt.
JavaTurtle – Programmieren mit Java
Dieses Material bietet einen anschaulichen Einstieg in das Programmieren mit Java anhand einer grafischen Schildkröte (Turtle). Lernende können grundlegende Programmierkonzepte wie Schleifen, Variablen, Parameter und Methoden praktisch anwenden und direkt visuell überprüfen.
JavaScriptTurtle - Programmieren mit JavaScript
Das Material bietet einen anschaulichen Einstieg in das Programmieren mit JavaScript anhand einer programmierbaren Schildkröte (Turtle). Lernende verstehen grundlegende imperative Konzepte wie Schleifen, Verzweigungen, Variablen, Parameter und Funktionen durch sofortige grafische Rückmeldung.
JavaKara und Ablaufstrukturen in Java
Dieses Unterrichtsmaterial führt in die Programmierung mit JavaKara ein und vermittelt grundlegende Ablaufstrukturen wie Verzweigungen, Schleifen und Methoden. Anhand von Puzzle-Gruppenarbeiten und praktischen Übungen erarbeiten sich die Lernenden die Syntax und Logik der Programmiersprache Java.
Programming: Grundlegende Programmierkonzepte mit Java und JavaKara
Das Unterrichtsmaterial führt in die imperagive Programmierung mithilfe von Java und der Lernumgebung JavaKara ein. Es behandelt grundlegende Konzepte wie Kontrollstrukturen, Methoden, Variablen und Arrays und verwendet dabei sowohl JavaKara als auch die Entwicklungsumgebung Eclipse.
Programmierprojekt: Bildbearbeitung
Dieses Unterrichtsmaterial beschreibt ein Programmierprojekt zur Bildbearbeitung in Java, bei dem Schülerinnen und Schüler in Partnerarbeit eigene Bildbearbeitungseffekte entwickeln. Es enthält ein vorgegebenes Rahmenprogramm für Eclipse sowie Bewertungskriterien und Hintergrundinformationen zu RGB-Farben und Grafikfiltern.