Nickname ändern

1.3.1 Einen gut lesbaren, strukturierten und modularisierten Programmiercode schreiben und dokumentieren

Unterrichtsmaterial zum Lernziel: Die Maturandinnen und Maturanden können einen gut lesbaren, strukturierten und modularisierten Programmiercode schreiben und dokumentieren.

1.3 Programmieren · 1. Algorithmen und Programme

Wie wird sortiert?
agil ▲0/3algorithmen ▲0/3app-entwicklung ▲0/3assembler ▲0/3augmented-reality ▲0/3

Lesson 3: Conditions (if, then, else) in Python

Dieses Unterrichtsmaterial führt in die Grundlagen von Verzweigungen (if-elif-else) in Python ein. Es erklärt Syntax, Einrückungen, Vergleichsoperatoren, boolesche Werte sowie logische Operatoren anhand praktischer Code-Beispiele.

95AI-Score

Deklarative und funktionale Programmierung mit Python, Elm, Racket und Prolog

Umfassendes Lehrmaterial zur deklarativen Programmierung mit Schwerpunkt auf funktionaler Programmierung in Python, Elm und Racket sowie logischer Programmierung. Das Material deckt Programmierkonzepte, Datenstrukturen, Algorithmen und Webentwicklung ab.

95AI-Score

MultiKara: Programmieren lernen mit Objekten und Robotern

MultiKara ist eine erweiterte Java-Lernumgebung (basierend auf dem bekannten Kara-Robotersystem), die spielerisch die objektorientierte Programmierung vermittelt. Lernende steuern Marienkäfer durch verschiedene Aufgabenwelten und lernen dabei Algorithmen, Kontrollstrukturen und objektorientierte Konzepte anzuwenden.

95AI-Score

Tic Tac Toe in Java

Ein umfassendes Unterrichtsmaterial zur objektorientierten Programmierung in Java anhand des Spiels Tic Tac Toe. Es behandelt schrittweise Themen wie AWT-GUIs, Interfaces, Event Handling, Exceptions und File I/O durch praktische Programmierübungen.

95AI-Score

Turtle Invaders: Spiel-Programmierung in Python

Dieses Unterrichtsmaterial führt Schritt für Schritt in die Entwicklung eines Arcade-Spiels im Stil von Space Invaders mit Python und dem Turtle-Modul ein. Dabei werden grundlegende Programmierkonzepte wie Ereignissteuerung, Animationen, das global-Keyword sowie die Unterscheidung zwischen immutablen primitiven Datentypen und mutablen Listen behandelt.

95AI-Score

Multi-Modus Roboter mit BBC micro:bit und Maqueen

Dieses Projektmaterial führt Schritt für Schritt durch den Bau eines intelligenten, ferngesteuerten Roboters mit zwei micro:bit-Mikrocontrollern. Die Schülerinnen und Schüler lernen anhand von Challenges, wie man Zustandsmaschinen, Event-Loops, Funkkommunikation und Sensorik in Python kombiniert.

92AI-Score

Solange-Schleifen: while

Dieses umfassende Unterrichtsmaterial führt anschaulich in die Verwendung von while-Schleifen in Python ein. Es behandelt Themen wie bedingte Wiederholungen, Endlosschleifen, break-Anweisungen und typische Stolpersteine wie Off-by-one-Fehler anhand von Alltagsbeispielen und Programmierübungen mit Lösungen.

92AI-Score

Sokoban programmieren in Python

Eine umfassende Anleitung und Projektdokumentation zur Entwicklung des Klassikers Sokoban in Python unter Verwendung von objektorientierten Konzepten, Dateiverarbeitung und der Bibliothek Pygame.

90AI-Score

Objektorientierte Programmierung (OOP) Grundprinzipien in Python

Dieses Unterrichtsmaterial führt anhand eines durchgehenden Geometrie-Projekts in Python in die vier Grundprinzipien der objektorientierten Programmierung ein: Abstraktion, Vererbung, Datenkapselung und Polymorphie. Es enthält Definitionen, Analogien, Programmieraufgaben und vollständige Code-Lösungen.

90AI-Score

Datenkapselung und Sichtbarkeit in Python

Dieses Unterrichtsmaterial führt in das Konzept der Datenkapselung und objektorientierten Sichtbarkeiten (public, protected, private) in Python ein. Anhand praktischer Code-Beispiele mit Klassen wie Sheep und Person lernen die Schülerinnen und Schüler den Einsatz von Gettern, Settern und Namenskonventionen.

90AI-Score

Funktionen in Python definieren und anwenden

Dieses Unterrichtsmaterial führt in die Erstellung und den Aufruf von Funktionen in Python ein. Anhand konkreter Beispiele wie dem Satz des Pythagoras und der Lösung quadratischer Gleichungen wird gelehrt, wie Argumente, Keyword-Argumente und Rückgabewerte sinnvoll eingesetzt werden.

90AI-Score

Objects-First with Java (BlueJ Edition)

Dieses Lehrbuch vermittelt die objektorientierte Programmierung in Java anhand von praxisnahen Projekten und der Entwicklungsumgebung BlueJ. Es verfolgt einen reinen 'Objects-First'-Ansatz und enthält integrierte Übungen zum direkten Programmieren.

90AI-Score

Sortieren durch Aufsteigen / Bubblesort

Das Unterrichtsmaterial führt in das klassische Sortierverfahren Bubblesort ein. Die Lernenden analysieren die Grundidee anhand von Beispielen, beschreiben den Algorithmus, erstellen ein Struktogramm und implementieren den Algorithmus schliesslich selbst.

90AI-Score

Umwandlung iterativer Algorithmen in rekursive Algorithmen

Dieses Unterrichtsmaterial behandelt detailliert die Umwandlung von iterativen Algorithmen in rekursive Algorithmen am Beispiel der Potenzfunktion. Es enthält Programmierbeispiele in Python, Analysen von Ablaufprotokollen sowie praktische Programmieraufgaben zur Simulation von Programmausführungen.

90AI-Score

Übungen zur Rekursion und Programmentwicklung in Python

Eine Sammlung von Programmieraufgaben und Übungen, bei denen rekursive Algorithmen in Python analysiert, angewendet, schrittweise entwickelt und getestet werden. Die Lernenden nutzen problemreduzierende Ansätze und visualisierende Hilfsmittel wie Aufrufbäume, um rekursive Funktionen für Listenoperationen zu verstehen und zu programmieren.

90AI-Score

Verzweigungen für Grafikkompositionen in Python

Dieses Unterrichtsmaterial führt in die Nutzung von if-else und if-elif-else Verzweigungen zur Erstellung von Grafiken und Mustern in Python ein. Lernende wenden Kontrollstrukturen an, experimentieren mit Lambda-Ausdrücken und üben systematisches Testen und Fehlerbeheben in partnerbasierten Aufgaben.

90AI-Score

Accumulators in Recursive Function Design (HtDP)

Dieses Lehrmaterial behandelt das Konzept von Akkumulatoren zur Optimierung und Ermöglichung rekursiver Funktionen. Es zeigt anhand von Beispielen wie Distanzberechnungen und Graphentraversierung, wie der Verlust von Kontextwissen vermieden und die Leistung gesteigert werden kann.

90AI-Score

Quote, Unquote und Listen in Scheme/Racket

Dieses Lehrmaterial behandelt vertiefte Konzepte der Programmiersprache Racket bzw. Scheme, insbesondere den Umgang mit Quotierung (quote, quasiquote, unquote) und Spleissing. Zudem wird gezeigt, wie strukturierte Listen zur automatisierten Erzeugung von HTML-Webseiten und Tabellen verwendet werden.

90AI-Score

Arbitrarily Large Data and Lists in Programming

Dieses Lehrmaterial behandelt die Verarbeitung von Daten beliebiger Größe mithilfe von Listen und selbstbezüglichen Datenstrukturen. Anhand von Beispielen wird das Entwurfsrezept für rekursive Programme (Templates, Basisfälle, natürliche Rekursion) in einer funktionalen Programmiersprache eingeführt.

90AI-Score

How to Design Programs: Arithmetic, Functions and Programs

Dieses Lehrmittel führt grundlegend in die Programmierung mit Racket (BSL) ein. Es behandelt elementare Datentypen, Ausdrücke, Funktionsdefinitionen und das Entwerfen von Programmen anhand praktischer Beispiele wie der Berechnung von Kino-Gewinnen.

90AI-Score

Programming Concepts in Python with TigerJython

Ein interaktives Online-Lehrbuch zur Vermittlung grundlegender Programmierkonzepte mit Python und der IDE TigerJython. Es bietet zahlreiche Codebeispiele und Übungen, die auf ein tiefes Verständnis von Programmierkonzepten abzielen.

90AI-Score

Einführung in Python: Grundlagen, Datentypen und erste Programme

Dieses offizielle Python-Tutorial führt in die Grundlagen der Programmiersprache ein. Es behandelt die Nutzung als Taschenrechner, Operationen mit Zeichenketten (Strings), den Umgang mit Listen sowie erste Programmierschritte inklusive Schleifen.

90AI-Score

Lesson 6: While-Schleifen und Kontrollstrukturen in Python

Dieses Unterrichtsmaterial erklärt anhand von Codebeispielen und Erklärungen die Verwendung von While-Schleifen, Schleifenkontrollstrukturen wie break und continue sowie Mehrfachzuweisungen in Python.

90AI-Score

Prüfung Programming, Automation, Computation

Eine schriftliche Informatikprüfung für Gymnasien, die praxisnahe Aufgaben zu den Themenbereichen Programmierung (Visualisierung mit Google Code Playground), Automatentheorie (KARA und Mustererkennung) sowie Projektmanagement (Marshmallow Challenge) abdeckt.

90AI-Score

Backtracking mit Heuristiken

Dieses Unterrichtsmaterial führt anhand eines alltäglichen Beispiels (Websuchen) in das Konzept des Backtrackings ein und vertieft das Thema mit Algorithmen, Laufzeitbetrachtungen und Anwendungsbeispielen wie Labyrinthen und Springerwegen. Dabei werden auch Heuristiken zur Optimierung der Suche, insbesondere die Warnsdorf-Heuristik, besprochen.

90AI-Score

JavaKara: Lösungen zu Rekursions-Aufgaben

Das Material enthält kommentierte Programmierlösungen in Java für JavaKara, die sich gezielt mit rekursiven Algorithmen und Problemstellungen wie Labyrinthen, Treppensteigen und dem Durchsuchen von Wegen befassen.

90AI-Score

Turing Kara - Lernumgebung zu Turingmaschinen und Algorithmen

Diese interaktive Programmierumgebung (Turing Kara) lässt Lernende den Begriff des Algorithmus und Turingmaschinen spielerisch und praxisnah erarbeiten. Anhand verschiedener Aufgaben wie binärer Addition, Palindromprüfung oder Backtracking schreiben und testen sie schrittweise Befehlsfolgen. Das Material vermittelt fundamentale Konzepte der theoretischen Informatik und des algorithmischen Denkens auf anschauliche Art.

90AI-Score

Kara – Programmieren lernen mit der programmierbaren Marienkäfer-Welt

Dieses Materialpaket zum Lernprogramm 'Kara' führt spielerisch in die Grundlagen der Programmierung ein. Schülerinnen und Schüler lernen, den Marienkäfer durch das Ausführen von Befehlssequenzen und das Erstellen eigener Programme (z.B. in Java oder via grafischer Programmierung) über das Spielfeld zu steuern.

90AI-Score

Roboter-Programmierung: Aus der Box und durch das Labyrinth

Dieses Unterrichtsmaterial führt Schülerinnen und Schüler schrittweise dazu, reale Probleme in Teilprobleme zu zerlegen und physische Roboter (micro:bit) mithilfe von Programmen und Sensoren durch eine Box und ein Labyrinth zu steuern. Dabei werden Planungsphasen, Block- bzw. Textprogrammierung und Fehleranalysen kombiniert.

90AI-Score

GameGridKara 2.0 – Java lernen mit Kara

Dieses Unterrichtsmaterial führt spielerisch und anschaulich in die Programmierung mit Java ein, indem der Marienkäfer Kara in einer grafischen Mini-Umgebung gesteuert wird. Es enthält strukturierte Handouts, Programmierübungen sowie vollständige Lösungen für mehrere Lektionen.

88AI-Score

Weltbank-Indikatoren Projekt: Daten mit SQL in Python

In diesem umfassenden Programmierprojekt verbinden die Lernenden eine SQLite-Weltbankdatenbank mit Python, führen komplexe SQL-Abfragen durch und entwickeln eine eigene interaktive Konsolenanwendung oder Präsentation. Das Material enthält anschaulichen Beispielcode, wertvolle Projektaufgaben sowie klare Bewertungskriterien inklusive Code-Review.

88AI-Score

Interaktive Web-Tools mit JavaScript erstellen

Dieses Material zeigt anschaulich, wie Formulardaten mit JavaScript ausgelesen, validiert und dynamisch verarbeitet werden. Anhand praktischer Alltags-Anwendungen wie einem BMI- und Trinkgeldrrechner wird das Programmieren interaktiver Webseiten geübt.

88AI-Score

Dijkstra-Algorithmus und Dictionaries in Python

Eine vertiefende Programmier-Challenge, bei der Schülerinnen und Schüler den Dijkstra-Algorithmus und die Verwendung von Python-Dictionaries zur effizienten Repräsentation von Graphen schrittweise implementieren.

88AI-Score

Entscheidungsketten mit if ... elif ... else in Python

Dieses Unterrichtsmaterial erklärt anschaulich den Unterschied zwischen unabhängigen if-Bedingungen und verknüpften if-elif-else-Ketten in Python. Anhand von Beispielen wie einer Bug-Hunt-Aufgabe und Notenberechnungen lernen die Schülerinnen und Schüler, Bedingungen strukturiert und in der richtigen Reihenfolge zu formulieren.

88AI-Score

Das Geburtstagsparadoxon: Simulation und Rekursion in Python

Dieses Material führt anhand des berühmten Geburtstagsparadoxons in die Programmierung mit Python ein. Lernende schätzen intuitiv, berechnen die Wahrscheinlichkeit mittels Schleifen und erweitern das Problem anschliessend durch einen rekursiven Ansatz.

88AI-Score

Entscheidungen treffen und boolesche Logik in Python

Dieses umfassende Unterrichtsmaterial führt in Python-Entscheidungsstrukturen mit if, else und logischen Operatoren wie and, or und not ein. Es erklärt anschaulich den Unterschied zwischen Zuweisung und Vergleich, behandelt den Modulo-Operator sowie break und bietet zahlreiche praxisnahe Aufgaben mit vollständigen Musterlösungen.

88AI-Score

Präzisere PPG-Messung mit dem USB-Mikroskop

Dieses Unterrichtsmaterial zeigt, wie man mithilfe eines USB-Mikroskops und Python PPG-Signale (Photoplethysmographie) zur Herzfrequenzmessung erfasst. Die Schülerinnen und Schüler vergleichen verschiedene Körperstellen, analysieren die Signale mit Filtern und FFT und vertiefen ihr Wissen durch praktische Experimente.

88AI-Score

Methoden, Übergabe- und Rückgabewerte in Java mit Greenfoot

Das Unterrichtsmaterial führt schrittweise und ansprechend in das Konzept von Methoden, Übergabewerten und Rückgabewerten in Java ein, indem es die visuelle Entwicklungsumgebung Greenfoot und die Turtle-Figur Joe nutzt. Die Lernenden strukturieren Code um, schreiben flexible Polygone-Methoden und nutzen die Klassendokumentation (API), um interaktive Zeichnungen zu erstellen.

88AI-Score

Einführung in die Objektorientierte Programmierung mit Python und Turtle

Dieses Unterrichtsmaterial führt in die Grundlagen der objektorientierten Programmierung (OOP) in Python ein. Anhand von Beispielen wie einer Turtle, Schafen und rationalen Zahlen werden Klassen, Objekte, Konstruktoren, Vererbung und Datenkapselung praxisnah vermittelt.

85AI-Score

Prüfung zu Python-Grundlagen und Objektorientierter Programmierung

Dieses Dokument beschreibt eine zweiteilige Prüfung zu den Grundlagen von Python, einschliesslich Kontrollstrukturen, Datentypen und Funktionen, sowie zu grundlegenden Konzepten der objektorientierten Programmierung (OOP).

85AI-Score

Eigene Klasse für rationale Zahlen in Python programmieren

Die Lernenden schreiben eine eigene Python-Klasse für rationale Zahlen (Brüche), um das Konzept der objektorientierten Programmierung und das Erstellen von Methoden und Konstruktoren zu üben. Dabei implementieren sie mathematische Operationen und optional auch Operatorüberladungen.

85AI-Score

Objektorientierte Programmierung mit Python: Konstruktoren und Methoden

Das Material führt anhand des Beispiels einer Schaf-Klasse in die objektorientierte Programmierung in Python ein. Es behandelt insbesondere den Konstruktor (__init__) und das Setzen von Objekteigenschaften sowie Methoden.

85AI-Score

Einführung in die objektorientierte Programmierung mit Python

Dieses Unterrichtsmaterial führt anhand eines einfachen Beispiels (Klasse Sheep) in die Grundlagen der objektorientierten Programmierung mit Python ein. Es behandelt das Erstellen von Klassen, das Instanziieren von Objekten sowie die Definition und Nutzung von Attributen und Methoden.

85AI-Score

Einführung in die Objektorientierung mit Python und Turtle

Das Unterrichtsmaterial führt in die grundlegenden Konzepte der objektorientierten Programmierung (Klassen, Objekte, Eigenschaften und Methoden) anhand der Programmiersprache Python und der Turtle-Grafik ein. Es beinhaltet Erklärungen zur Abstraktion sowie praktische Aufgaben zum Erzeugen von Objekten und zum Setzen von Eigenschaften.

85AI-Score

Bilderzeugung und -bearbeitung mit Python und PIL für Höhendaten

Das Unterrichtsmaterial führt in die programmgesteuerte Erstellung und Manipulation von Bildern mit Python und der Pillow-Bibliothek ein. Anhand des Kontexts von Höhendaten werden Algorithmen zur Erstellung von Heatmaps, Schattierungen und einer Hilfsfunktion zur Wertebegrenzung (Clamp) erarbeitet.

85AI-Score

Dateiverarbeitung und Einlesen von Daten in Python

Dieses Unterrichtsmaterial führt in das Öffnen, Lesen und Schliessen von Textdateien in Python ein. Anhand von Beispielen und kleinen Aufgaben lernen die Lernenden den Umgang mit dem with-Kontext, Fehlerbehandlung bei externen Dateien sowie das Trennen von Zeichenketten und Konvertieren in Zahlen.

85AI-Score

Repetitionskurs Python: Grundlagen

Dieses Unterrichtsmaterial bietet eine kompakte Repetition der Python-Grundlagen. Es behandelt elementare Konzepte wie Zahlen, Operatoren, Funktionen, Kontrollstrukturen (While- und For-Schleifen, If-Else-Verzweigungen) sowie Listen anhand kurzer Erklärungen und praktischer Aufgaben.

85AI-Score

Einführung in die For-Schleife in Python

Dieses Unterrichtsmaterial erklärt die Syntax und Funktionsweise von For-Schleifen in Python anhand von Beispielen wie Summenbildung, Listenverständnissen und Textdiagrammen. Es enthält zudem praktische Programmieraufgaben inklusive Musterlösungen und eine Zusatzaufgabe.

85AI-Score

Listen in Python

Dieses Unterrichtsmaterial führt in die Verwendung von Listen in Python ein, inklusive Syntax, Zugriff, Methoden zum Hinzufügen und Entfernen sowie Sortierung. Anhand praktischer Code-Beispiele und einer Programmieraufgabe zur Median-Berechnung wird das Gelernte angewendet.

85AI-Score

Verzweigungen und Kontrollstrukturen in Python

Dieses Unterrichtsmaterial führt in die If-Else-Verzweigungen und die Verwendung von elif-Blöcken in der Programmiersprache Python ein. Anhand einer praktischen Programmieraufgabe zum Beschreiben von Zahlen wird das Erstellen und Ergänzen von Funktionen sowie Kontrollstrukturen geübt.

85AI-Score