Studium
Bachelor
- 1.Semester (WS 07/08)
- 2.Semester (SoSe 2008)
- 3.Semester (WS 08/09)
- 4.Semester (SoSe 2009)
- 5.Semester (WS 09/10)
- 6.Semester (SoSe 2010)
- 7.Semester (WS 10/11)
Master
- 8.Semester (SoSe 2011)
- 9.Semester (WS 11/12)
Algorithmen und Programmierung I - Funktionale Programmierung
Dozent: Prof. Dr. Elfriede Fehr
Inhalt
Zentraler Gegenstand des Bereichs Algorithmen und Programmierung ist die Entwicklung und Beschreibung von Algorithmen. Dazu gehören theoretische Grundlagen wie Berechenbarkeit, Verifikation und Komplexität ebenso wie die praktische Programmierung. Behandelt werden Spezifikationen und Implementierung von Algorithmen und Datenstrukturen und grundlegende Prinzipien von Programmiersprachen und Programmiermethodik. Während ab dem zweiten Semester in einer objektorientierten Sprache (Java) programmiert wird, werden in dieser Veranstaltung Funktionen zur Beschreibung von Algorithmen verwendet. Zur Einführung in die Funktionale Programmierung benutzen wir die Programmiersprache Haskell und zwar die Implementierung Hugs. Hugs kann zur privaten Nutzung von http://cvs.haskell.org/Hugs/pages/downloading.htm bezogen werden. Die offizielle Dokumentation ist Teil der Literatur zur Veranstaltung.
Vorlesung
Aus der Vorlesung sind digital folgende Haskell-Skripte verfügbar:
- 15.10.2007 Parkplatzproblem
- 17.10.2007 Web eines Hundes
- 22.10.2007 Wurzelfunktion
- 29.10.2007 Funktionale Typvariablen
- 31.10.2007 Anwendung zum Datentyp Char
- 31.10.2007 Anwendungsbeispiel zum Datentyp Int
- 12.11.2007 Beispiel zu Listen
- 14.11.2007 Beispiel von Typsynonymen und zur ZF-Notation
- 19.11.2007 Ein erstes Grafiksystem (Grafik = ASCII-Zeichen)
- 21.11.2007 Prim- und Fibonacci-Zahlen
- 10.12.2007 Datenbank für die Ausleihe
- 12.12.2007 Case of
- 17.12.2007 Zufallszahlen
- 19.12.2007 Schnelles Suchen
- 19.12.2007 Sortieralgorithmen
- 19.12.2007 Textverarbeitung
- 07.01.2008 Erstellen eines Sachwortverzeichnisses (Index)
- 09.01.2008 Klassenkonzept
- 16.01.2008 Polymorphe algebraische Datentypen
- 21.01.2008 Übersetzung einer, arithmetischer Ausdrücke in Stapelmaschinenprogramme
- 23.01.2008 Fehlerbehandlung
- 06.02.2008 Interaktive Programme
- 11.02.2008 8-Damen-Problem
- 11.02.2008 Türme von Hanoi
Übungsblätter
| # | Übungen | Lösungen |
|---|---|---|
| 1 | Übungsblatt 1 | |
| 2 | Übungsblatt 2 | |
| 3 | Übungsblatt 3 | |
| 4 | Übungsblatt 4 | |
| 5 | Übungsblatt 5 | |
| 6 | Übungsblatt 6 | |
| 7 | Übungsblatt 7 | |
| 8 | Übungsblatt 8 | |
| 9 | Übungsblatt 9 | |
| 10 | Übungsblatt 10 | |
| 11 | Übungsblatt 11 | |
| 12 | Übungsblatt 12 | |
| 13 | Übungsblatt 13 | |
| 14 | Übungsblatt 14 | |
| 15 | Übungsblatt 15 | |
| Klausur | Musterlösung der Klausur (Haskell-Datei) | |
| Nachklausur | Musterlösung der Nachklausur (Haskell-Datei) |