Nickname ändern

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.

1.1 Programmierkonzepte · 1. Algorithmen und Programmierung

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

Graphentheorie und Algorithmen: Tiefensuche, Breitensuche und Dijkstra

Das Lehrmaterial behandelt grundlegende Konzepte der Graphentheorie wie Adjazenzlisten und Graphendarstellungen. Es führt praxisnah durch wichtige Algorithmen wie Tiefensuche (DFS), Breitensuche (BFS) und Dijkstras Algorithmus zur Bestimmung kürzester Wege.

95AI-Score

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

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

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

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

Advent of Code: Monster Messages (Formale Grammatiken und Parsing)

In dieser Programmieraufgabe sollen Nachrichten anhand einer kontextfreien Grammatik validiert werden. Das Material eignet sich hervorragend, um fortgeschrittene Programmierkonzepte sowie theoretische Grundlagen wie formale Sprachen und Grammatiken praktisch anzuwenden.

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

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

Der Turm von Hanoi: Strategien und Implementierung

Dieses Unterrichtsmaterial führt Lernende durch die Analyse und algorithmische Lösung des Klassikers 'Turm von Hanoi'. Die Schülerinnen und Schüler erarbeiten rekursive und generalisierte Strategien für mehrere Scheiben und implementieren diese in Code.

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

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

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

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

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

Auffrischung und Erweiterung der Python-Kenntnisse

Dieses Kapitel dient der Repetition und Vertiefung grundlegender Python-Kenntnisse sowie der Einführung in die objektorientierte Programmierung. Anhand praktischer Aufgaben werden Daten aus Textdateien eingelesen, analysiert, aufbereitet und dargestellt.

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

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

While-Schleifen in Python

Dieses Unterrichtsmaterial führt in die Verwendung von While-Schleifen in Python ein. Anhand von anschaulichen Beispielen wie Zählvariablen, Zufallsexperimenten mit Würfeln und einer Monte-Carlo-Simulation zur Bestimmung von Pi wird das Konzept praktisch angewendet und vertieft.

85AI-Score

Endliche Automaten und Zustände in Python programmieren

Dieses Unterrichtsmaterial führt in die praktische Programmierung von endlichen Automaten in Python ein. Anhand von Beispielen wie einer Lichtschaltung, einem Getränkeautomaten und einem E-Mail-Checker (Akzeptor) lernen die Lernenden den Einsatz von Enums, Variablen und Kontrollstrukturen zur Zustandsverwaltung.

85AI-Score

Einführung in Kara den Marienkäfer

Dieses Unterrichtsmaterial führt in die Programmierumgebung von Kara dem Marienkäfer ein, welcher als endlicher Automat grafisch programmiert werden kann. Es enthält Installationshinweise, eine Kurzanleitung zur Bedienung und verweist auf integrierte Programmieraufgaben.

85AI-Score

The Stars Align (Advent of Code)

Eine Programmieraufgabe zur Simulation der Bewegung von Punkten mit bekannten Positionen und Geschwindigkeiten über die Zeit, bis sie ein lesbares Wort bilden. Die Schülerinnen und Schüler müssen einen Algorithmus implementieren, um die Positionen iterativ zu berechnen und den Zeitpunkt der minimalen Ausdehnung zu finden.

85AI-Score

Advent of Code: Subterranean Sustainability (Zellautomat)

Eine Programmieraufgabe im Stil von Advent of Code, bei der die zeitliche Entwicklung eines eindimensionalen zellulären Automaten über mehrere Generationen hinweg simuliert werden muss.

85AI-Score

Parsing von Firefox user.js mit Raku Grammars

Das Material zeigt Schritt für Schritt, wie man mit der Programmiersprache Raku und sogenannten Grammars eine Konfigurationsdatei (user.js von Firefox) parsen kann. Dabei werden reguläre Muster, Regeln und das Debugging von Grammars praktisch erläutert.

85AI-Score

Course of Raku: Reactive Programming

Dieses Unterrichtsmaterial behandelt reaktive Programmierung in Raku anhand von react- und whenever-Blöcken. Es enthält erklärende Abschnitte, Quizze und Programmierübungen zur parallelen und ereignisbasierten Verarbeitung von Datenströmen.

85AI-Score

Course of Raku: Concurrent Programming with Promises

Dieses Unterrichtsmaterial bietet eine Einführung in die nebenläufige Programmierung (Concurrency) mittels Promises in der Programmiersprache Raku. Es behandelt das Starten, Awaiten und Kombinieren von Promises sowie zugehörige Übungen und Quizzes.

webseite 1.1.1
85AI-Score

Course of Raku: Lazy and infinite sequences

Dieses Unterrichtsmaterial führt in das Konzept von verzögerten und unendlichen Sequenzen in der Programmiersprache Raku ein. Es erklärt die Verwendung des Sequenzoperators anhand praktischer Beispiele und wird durch Übungen und Quizzes ergänzt.

webseite 1.2.21.1.1
85AI-Score

Course of Raku: Reduction

Dieses Lehrmaterial behandelt das Konzept der Reduktion in der Programmiersprache Raku, bei dem eine Liste von Werten mittels eines Operators zu einem einzigen Wert zusammengefasst wird. Es enthält theoretische Erklärungen, Quizfragen sowie praktische Programmierübungen.

85AI-Score

Course of Raku: Statement Prefixes and Control Flow

Dieses Unterrichtsmaterial bietet eine Einführung in fortgeschrittene Kontrollstrukturen und sogenannte Statement-Präfixe in der Programmiersprache Raku. Es behandelt Ausdrücke wie do, eager, lazy, sink und quietly und enthält begleitende Übungen sowie Quizzes.

webseite 1.1.1
85AI-Score

Missverständnisse beim erweiterten For-Loop in Java

Das Material erklärt anhand von Codebeispielen in Java, wie der erweiterte for-Schleifen-Mechanismus (for-each) funktioniert und warum Zuweisungen an die Schleifenvariable keine Auswirkungen auf das zugrundeliegende Array haben. Zudem wird das Konzept durch die Entwurzelung (Desugaring) durch den Compiler verständlich gemacht.

85AI-Score

Recursive Call Sites and Return Statements in Java

Dieses Unterrichtsmaterial beleuchtet einen häufigen Stolperstein beim Programmieren von rekursiven Methoden mit Rückgabewert in Java. Es zeigt anhand von Codebeispielen auf, warum auch bei Endrekursionen (tail recursion) zwingend ein Return-Statement erforderlich ist und korrigiert typische Missverständnisse.

85AI-Score

Implementierung von Graphen in Python

Dieses Unterrichtsmaterial erklärt, wie Graphen mithilfe von Adjazenzmatrizen und Adjazenzlisten repräsentiert werden. Die Konzepte werden praktisch in Python und objektorientiert umgesetzt.

85AI-Score

Implementierung von Schlangen in Python

Dieses Material erklärt die objektorientierte Implementierung des abstrakten Datentyps Schlange (Queue) in Python anhand einer Klasse. Anhand eines Python-Protokolls wird die Nutzung der Schlangenoperationen demonstriert und mit einer praktischen Aufgabe zum Testen ergänzt.

85AI-Score

Implementierung einer Stapel-Klasse

Dieses Unterrichtsmaterial zeigt anhand einer Python-Aufgabe, wie der abstrakte Datentyp Stapel (Stack) als objektorientierte Klasse implementiert wird. Die Lernenden vervollständigen die Methoden inklusive Dokumentation und nutzen Doctests zur Überprüfung.

85AI-Score

Übungen zu rekursiven Algorithmen mit dem RecursionTutor

Dieses Unterrichtsmaterial enthält praktische Programmier- und Analyseaufgaben zur Rekursion anhand konkreter Anwendungsbeispiele wie Zinseszins, Medikamentenabbau und geometrischen Wachstumsprozessen. Lernende nutzen einen interaktiven Tutor zur Visualisierung von Aufrufbäumen, um rekursive Algorithmen zu entwickeln, zu testen und zu verstehen.

85AI-Score

Natürliche Zahlen als rekursive Datenstruktur

Das Unterrichtsmaterial erklärt anhand des Beispiels der Summenbildung, wie natürliche Zahlen als rekursive Datenstruktur aufgefasst und verarbeitet werden können. Es zeigt die Entwicklung und Ausführung rekursiver Algorithmen sowie deren Umsetzung in Python.

85AI-Score

Liste als rekursive Datenstruktur

Dieses Unterrichtsmaterial erklärt die rekursive Definition von Listen und zeigt anhand eines konkreten Beispiels, wie rekursive Algorithmen zur Verarbeitung von Listen entwickelt, in Python implementiert und getestet werden.

85AI-Score

Einstieg in geschachtelte Listen anhand einer Hochzeitsgästeliste

Dieses Unterrichtsmaterial führt anhand eines praktischen Beispiels zur Verwaltung einer Gästeliste in Python in die Verarbeitung von Listen und insbesondere geschachtelten Listen ein. Die Lernenden vergleichen iterative und rekursive Ansätze zur Ausgabe von Datenstrukturen und analysieren den dazugehörigen Quelltext.

85AI-Score

Rekursive Algorithmen für selbstähnliche Figuren und Fraktale in Python

Das Unterrichtsmaterial enthält praktische Programmierübungen zu rekursiven Algorithmen und Selbstähnlichkeit. Die Lernenden sollen geometrische Figuren wie das Sierpinski-Dreieck oder den Pythagoras-Baum in Teilprobleme zerlegen, entsprechende Algorithmen entwickeln und diese in Python implementieren.

85AI-Score