Grundlagen der funktionsorientierten Programmierung mit SCHEME
Aus ProgrammingWiki
Inhaltsverzeichnis |
Kommunikation mit Scheme
-
Einführung in die Kommunikation mit Scheme
- Syntax und Semantik
- Sonderform define
-
Prozeduren
- Prozedurabstraktionen
- Unbenannte Prozeduren
-
Datentypen
- Zahlen, Zeichen, Zeichenketten, Wahrheitswerte
- Symbole
Einfache Daten- und Programmstrukturen
-
Listen
- Listen und Paare
-
Komplexe Anwendungen: Prozeduren mit Zeichenketten und Listen
- Selektoren für Zeichenketten
- Benutzernamen und Passwörter
- Kfz-Kennzeichen
- Zum Weiterarbeiten: Allgemeine zufällige Kfz-Kennzeichen
-
Bedingte Ausdrücke
- Grundform
- Alternative
- Fallauswahl
-
Rekursionen
- Selbstähnlichkeiten
- Rekursionen als universelles Konzept zur Problemlösung
- Zum Weiterarbeiten: Fraktale
-
Echte und endständige Rekursionen
- Sprachelement let
- Quadratzahlen
- Glücksrad
- Turm von Hanoi
- Zum Weiterarbeiten: Der zerbrochene Stab
-
Komplexe Anwendungen: Numerische Listen
- Zum Weiterarbeiten:
-
Komplexe Anwendungen: Von musizierenden Chinesen und Schüttelwörtern
- Drei Chinesen mit dem Kontrabass...
- Schüttelwörter
- Zum Weiterarbeiten:
Höhere Daten- und Programmstrukturen
-
Mehrfachrekursionen
- Die Fibonaccizahlen
- Zum Weiterarbeiten: Superminimum
-
Prozeduren höherer Ordnung (I)
- Prozeduren nehmen Prozeduren entgegen
- Zum Weiterarbeiten: Primzahlfilter
-
Prozeduren höherer Ordnung (II)
- Prozeduren geben Prozeduren zurück
- Zum Weiterarbeiten: Kurvendiskussion
-
Streams
- Verzögerte Evaluation
- Zum Weiterarbeiten: Von Fröschen und Tischlampen
-
Projekt Zahlenfolgen
- Arithmetische, geometrische sowie weitere spezielle Zahlenfolgen und ihre Grenzwerte
Theoretische Grundlagen und Symbolverarbeitung
-
Der Lambda-Kalkül
- Definition von λ-Ausdrücken
- Rechenregeln für λ-Ausdrücke
- Zum Weiterarbeiten: Currying und Y-combinator
-
Projekt CAS
- Symbolische Differenzieren und Vereinfachen von Termen
Algorithmen und ihre Effizienz
-
Der Algorithmusbegriff
- Der Euklidische Algorithmus
- Das Sieb des Eratosthenes
- Zum Weiterarbeiten:
- Lösen quadratischer Gleichungen
- Das Newton-Verfahren
- Das Heron-Verfahren
- Primfaktorzerlegung
- π-Bestimmung mit der Monte-Carlo-Methode
- Lotto 6 aus 49
- Paritätsprüfung eines Bitmusters
- Die Punktladung im inhomogenen elektrischen Feld
- Das NIM-Spiel
- Der Morsecode (zum Vergleich: Der Morsecode als Java-Programm)
-
Sequenzielle Suche
- Zufallszahlen
- Zum Weiterarbeiten: Würfeln mit mehreren Würfeln
-
Binäre Suche
- Raten einer Zahl
- Zum Weiterarbeiten: Extremwertsuche nach dem Verfahren des Goldenen Schnitts
-
Zeitaufwand und asymptotische Ordnung
- $\mathcal{O}$-Notation
-
MinSort
- Theoretische und empirische Aufwandsbetrachtungen
- Zum Weiterarbeiten: GnomeSort
-
QuickSort
- Empirische Aufwandsbetrachtungen
- Teile-und-herrsche-Algorithmen
- Zum Weiterarbeiten: MergeSort
-
Grenzen beim Problemlösen
- Algorithmisch und praktisch unlösbare Probleme
- P-Probleme und NP-Probleme
-
Ausgewählte Algorithmen der Kryptologie
Literatur
- [1] H. Abelson, G. J. Sussman: Struktur und Interpretation von Computerprogrammen - Eine Informatik-Einführung, Springer-Verlag Berlin Heidelberg, 2001
- [2] L. Engelmann (Herausgeber): Duden - Informatik, Lehrbuch S II, Duden Paetec GmbH, Berlin 2006
- [3] R. H. Güting: Datenstrukturen und Algorithmen, B. G. Teubner Verlag, Stuttgart 1992
- [4] C. Landfried: Entwicklung und Erprobung lehrplangerechter Unterrichtsmaterialien für den Informatik-Unterricht in der Sekundarstufe II, Diplomarbeit, Görlitz 2004
- [5] R. Sedgewick: Algorithmen, Addison-Wesley (Deutschland) GmbH, 1998
- [6] Chr. Wagenknecht: Algorithmen und Komplexität, Fachbuchverlag Leipzig im Carl Hanser Verlag, München Wien 2003
- [7] Chr. Wagenknecht: Programmierparadigmen - Eine Einführung auf der Grundlage mit Scheme, B. G. Teubner Verlag, Wiesbaden 2004
- [8] Chr. Wagenknecht: Rekursionen - Ein didaktischer Zugang mit Funktionen, Dümmler Verlag, Bonn 1994
- [9] J. Ziegenbalg: Algorithmen - Von Hammurapi bis Gödel, Spektrum Akademischer Verlag GmbH, Heidelberg Berlin Oxford 1996
Impressum
Neben den Programmierumgebungen DrScheme / DrRacket bildet das vorliegende Unterrichtsmaterial seit 2008 die Arbeitsgrundlage des Informatik-Grundkurses der Jahrgangsstufe 11 am Geschwister-Scholl-Gymnasium Löbau.
Es wurde komplett auf den JavaScript-basierten Interpreter SchemeJS umgestellt und sollte uneingeschränkt in allen auf der Startseite angegebenen Web-Bowsern lauffähig sein.
Bei Problemen, Hinweisen oder Kritiken ist der Kontakt zum Autor sehr erwünscht:
Veit Berger
Geschwister-Scholl-Gymnasium
Pestalozzistraße 21
02708 Löbau
Email: bergervei@gsg-loebau.lernsax.de