Einführung in die Informatik II
Priv.-Doz. Dr. Lothar Schmitz
Wintertrimester 2005
[Termine] [Fragen] [Folien] [Übungen] [Literatur] [Software] [Vorlesung des letzten Trimesters]
Faschingsregelung
Die Vorlesung am Rosenmontag, 07.02.05, wird auf einen noch festzulegenden Termin verlegt.
Die Vorlesung am Faschingsdienstag, 08.02.05, findet zur gewohnten Zeit am gewohnten Ort statt.
Klausur
Die Trimestralklausur "Einführung in die Informatik" findet statt.
am 06.04.2005von 08:00 Uhr bis 10:00 Uhr
im Raum 35/1210B.
Es sind keine Hilfsmittel erlaubt, ausser nicht-elektronischen Schreibgeräten. Bringen Sie einen Lichtbildausweis zur Klausur mit.
Mit einem Schein kann rechnen, wer:
- sowohl 40 Prozent der Gesamtpunktzahl
- als auch 20 Prozent der erreichbaren Punkte jeder Aufgabe
erzielt.
Termine
Es handelt sich um eine Vorlesung mit vier Vorlesungsstunden und drei Übungsstunden wöchentlich (4 V + 3 SÜ TWS).
Die Vorlesungen finden jeweils
- Montags 08:30 Uhr bis 10:00 Uhr im Raum 33/0301 und
- Dienstags 08:30 Uhr bis 10:00 Uhr im Raum 33/0301
statt (es handelt sich jeweils um die genauen Anfangs- und Endzeiten).
Die Übungen finden jeweils Donnerstags statt (es handelt sich um die genauen Anfangs- und Endzeiten):
- Gruppe 1 (WINF): 07:30 Uhr bis 10:00 Uhr, Raum 41 / 0501 (Electronic Classroom) Übungsleiter Marc Akkermann,
- Gruppe 2 (INF): 13:00 Uhr bis 15:30 Uhr, Raum 33 / 3431 Übungsleiter Marc Akkermann,
- Gruppe 3 / 4 (INF): Donnerstags, 13:00 Uhr bis 15:30 Uhr, Raum 33 / 0401 Übungsleiter Jan Scheffczyk.
Die Gruppeneinteilungen sind wie im HT 2004.
Fragen
Wir möchten Sie an dieser Stelle explizit dazu auffordern, sich aktiv Ihrem Studium zu widmen und nachzufragen falls Sie etwas nicht verstanden haben. Prinzipiell gibt es keine "dummen Fragen". Es kommt jedoch darauf an, wie Sie Ihre Fragen formulieren und ob Sie sich schon einmal eigene Gedanken zu Ihrer Frage gemacht haben.
Sicher werden Sie auch auf andere "Ressourcen" als auf Übungsleiter oder Dozenten zurückgreifen. Eine schöne Einführung über das Stellen von Fragen finden Sie unter folgendem Link:
Folien zur Vorlesung
Die Folien werden auf dieser Seite (soweit möglich) jeweils ein paar Tage vor der entsprechenden Vorlesung veröffentlicht.
- Kapitel 1 [] Handzettel [] [abzaehlen.adb], [kPerm.adb]
- Kapitel 2 [] Handzettel [] Fallstudie Damen [] (Programme) Fallstudie Warshall []
[heapsort.adb] [indexSimpleAndKMPandBM.adb] [Merge.adb] [quicksort.adb] [Warshall.adb] - Exkurs Ausnahmebehandlung [] Handzettel []
- Kapitel 3 [] Handzettel [] Fallstudie Lambda-Interpreter [] [lambda.adb]
- Kapitel 4 [] Handzettel []
- Kapitel 5 [] Handzettel []
- Kapitel 6 [] Handzettel [] [Menge.hs], [MengeOrd.hs]
- Kapitel 7 [] Handzettel []
- Kapitel 8 [] Handzettel [] Optimale Suchbäume [] [OptimalSearchTree.adb]
- Kapitel 9 [] Handzettel []
- Kapitel 10 [] Handzettel []
- Gastvorlesung zum Thema Nebenläufigkeit []
Übungsblätter
Die Übungsblätter werden rechtzeitig auf dieser Seite veröffentlicht. Wir erwarten, dass Sie die Übungsblätter zur Übung dabei haben. Es empfiehlt sich, die Folien der Vorlesung sowie eigene Aufzeichnungen mit in die Übung zu nehmen.
Wir erwarten weiterhin, dass Sie Aufgaben, die nicht in der Übung behandelt werden konnten, selbständig nacharbeiten. Lösungsvorschläge zu den Übungsaufgaben ebenso auf dieser Seite veröffentlicht. Wir empfehlen jedoch dringend, dass Sie sich selbst Gedanken machen und nur im Notfall auf die Lösungsvorschläge zurückgreifen.
Fragen zum Übungsbetrieb richten Sie bitte an Jan Scheffczyk.
- Blatt 1 [, ] Lösungsvorschlag 1 [, ] gegenwind.adb kassenzettelpreis.adb schachtuerme.adb
- Blatt 2 [, ] Lösungsvorschlag 2 [, ] ketten.adb permutationlexikalisch.adb summe_dritte_potenz.adb
- Blatt 3 [, ] Lösungsvorschlag 3 [, ] springer.adb xxfreiezeichenketten.adb backtracking-muster.adb backtracking-muster.lhs XxfreieZeichenketten.hs palin.adb
- Blatt 4 [, ] Lösungsvorschlag 4 [, ] QuickSuche.hs quicksuche.adb
- Blatt 5 [, ] Lösungsvorschlag 5 [, ] integerlistpack.adb integerlistpack.ads insertionsort.adb listendurchschnitt.adb polynome.adb
- Blatt 6 [, ] Lösungsvorschlag 6 [, ] lambda.adb Lambda.hs
- Blatt 7 [, ] Lösungsvorschlag 7 [, ] Arithbaum.hs isokline.adb matrix.adb Beiblatt zu Aufgabe 25a
- Blatt 8 [, ] Lösungsvorschlag 8 [, ] floatmatrix.adb floatmatrix.ads varstrings.adb varstrings.ads bignat_list.adb listen_packet.adb listen_packet.ads Matrizen.hs
- Merkblatt zum Hoare Kalkül [, ]
- Blatt 9 [, ] Lösungsvorschlag 9 [, ] LogAusdruecke.hs
- Blatt 10 [, ] Lösungsvorschlag 10 [, ] avl_tree.adb rbtree_package.ads rbtree_package.adb Route.hs
- Blatt 11 [, ] Lösungsvorschlag 11 [, ] li_pack.ads li_pack.adb li_main.adb
Literatur & Links
- Allgemeines
- Peter Rechenberg (Hrsg.), Gustav Pomberger (Hrsg.), Informatik-Handbuch, Carl Hanser Verlag, 2002, 1192 S., ISBN 3-446-21842-4
- Haskell
- Helium Prelude Tour []
- Manuel M. T. Chakravarty, Gabriele C. Keller, An Introduction to Computing with Haskell, Pearson SprintPrint, 2002, 145 p. (auf Deutsch erhältlich in der Lehrbuchsammlung)
- Simon Thompson, Haskell - the craft of functional programming, Addison-Wesley, 1999, 487 p. (erhältlich in der Lehrbuchsammlung)
- Lambda-Kalkül: [Tutorial] [Folien]
- Programm-Verifikation:
- Ada:
- N. Cohen, Ada as a second Language, second edition, Addison Wesley 1996
- M. Ben-Ari, Ada for Software Engineers, Wiley 1998
- Ada-Online-Tutorial
- Online-Ada-Bücher
- Ada-Syntax online
Software
- Haskell
- Haskell 98 Report
- Haskell Interpreter: Helium (Windows, Unix, Linux, MacOS X, MacOS 9, FreeBSD)
- Haskell Interpreter: Hugs (Windows, Unix, Linux, MacOS X, MacOS 9, FreeBSD)
- Haskell Compiler: GHC (Windows, Unix, Linux, MacOS X, FreeBSD, OpenBSD)
- Haskell IDE: jcreator light (Windows)
- Ada
- Ada Language Reference Manual
- Ada Compiler: GNAT
- Ada IDEs: AdaGIDE (Windows), GRASP (Windows, Unix/Linux)
- Weitere Ada-Seiten: http://www.acm.org/sigada/ http://www.adapower.com/ http://ada-deutschland.de/
- Viewer
- Editoren mit Syntaxhighlighting
- ConText (Windows), Syntaxhighlighting für Haskell, (Installationshinweise),
- TextPad (Windows), Syntaxhighlighting u.a. für Haskell
- XEmacs (Windows, Unix, Linux, FreeBSD, NetBSD)
- Dokumentationstools
- Ada: adadoc
- Haskell: HDoc haddock HaskellDoc