![Bilder vom Neuenheimer Feld, Heidelberg und der Universität Heidelberg](/images/kv_library.jpg)
Programmieren I
Kursbeschreibung
Studiengang | Modulkürzel | Leistungs- bewertung |
---|---|---|
BA-2010 | P I | 6 LP |
NBA | P I | 6 LP |
Magister | - | - |
ÜK | - | 3 LP |
Dozenten/-innen | Gerhard Kremer |
Veranstaltungsart | Vorlesung/Übung |
Erster Termin | 18.10.2011 |
Zeit und Ort | Di, 11:15–12:45, INF 306 / SR 13 |
Do, 11:15–12:45, INF 306 / SR 13 |
Leistungsnachweis
Bearbeiten der wöchentlichen Übungsaufgaben, Teilnahme an der
Zwischenklausur, Bestehen der Abschlussklausur.
Die erfolgreich
bestandene Klausur ist Teil der Orientierungsprüfung.
NB: Das Commitment für diesen Kurs ist bereits vor der
Zwischenklausur abzugeben - zur Abschlussklausur wird jedoch nur
zugelassen, wer vorher alle anderen Voraussetzungen erfüllt
hat.
Inhalt
Ziel dieser Vorlesung ist, Studierenden einen ersten Überblick über die systematische Entwicklung von wartbaren und korrekten Programmen zu geben. Dies geschieht anhand der objektorientierten, interpretierten Sprache Python, die mit einem einfachen Objektmodell, guter Unterstützung der Modularisierung und einer reichen Bibliothek einen raschen Zugang zu modernen Programmiertechniken und zudem weitgehende Plattformunabhängigkeit bietet. Dabei wird versucht, den Stoff möglichst anhand konkreter (computerlinguistischer) Fragestellungen zu entwickeln.
Aufgaben
Die Aufgabenblätter werden donnerstags hier veröffentlicht und sind (in maximal 2er-Gruppen zu bearbeiten und) abzugeben bis zum jeweils folgenden Mittwoch um 23:59.
Bitte einsenden an prog1@cl... mit einer Betreffzeile nach dem Muster:
[prog1] Nachname1/Nachname2 Blatt NR
z.B. bei Blatt1:
[prog1] Kremer/Schmid Blatt 1
Lösungen als angehängte txt-Datei mitschicken und nach diesem Muster benennen:
Nachname1-Nachname2-Blatt-NR.txt
Evtl. abzugebende Programme bitte in Dateien speichern, und zur Abgabe nach diesem Muster benennen:
Nachname1_Nachname2_A_NR.py
z.B. bei Aufgabe Nr.3:
Kremer_Schmid_A_3.py
Tutorien
Bitte entscheiden Sie sich für eines der beiden:Di, 14:15–16:15, PC-Pool INF 325
Kursübersicht
Seminarplan
Datum | Sitzung | Materialien |
18.10. | Einführung | intro.pdf |
20.10. | Algorithmen |
algo.pdf -
aufgabenblatt1.pdf -
nguess.py |
25.10. | Ü Algorithmen; Variablen | |
27.10. | Variablen (Forts.) | variablen.pdf - aufgabenblatt2.pdf |
Feiertag: Allerheiligen | ||
3.11. | Funktionen |
funktio.pdf -
aufgabenblatt3.pdf -
funs.py |
8.11. | Namensräume; Methoden (Bsp.: String-Objekte) | kontro.pdf |
11.11. | Kontrollstrukturen, Sequenzen | aufgabenblatt4.pdf |
15.11. | Ü Iteration | |
17.11. | Bedingte Iteration, Sequenz-Methoden | sequenz.pdf - aufgabenblatt5.pdf |
22.11. | Dictionaries | |
24.11. | Exceptions, String Formatting | dictio.pdf - aufgabenblatt6.pdf |
29.11. | Encodings (Einf.) | |
1.12. | Encodings (Forts.) | enco.pdf - aufgabenblatt7.pdf |
6.12. | Module, Pakete | module.pdf |
8.12. | Datei- und Prozessmanagement |
files.pdf -
aufgabenblatt8.pdf -
example.txt (Abgabe Aufgaben bis MI, 11.01.2012) |
13.12. | Fragestunde | |
15.12. | Zwischenklausur (Stoff bis einschl. Encodings) | |
20.12. | Zwischenklausurbesprechung | |
22.12. | Entfällt. Ihnen allen schöne Weihnachten! | |
10.01. | Phrasenstrukturgrammatikverarbeitung in Python | |
12.01. | Rekursion | rekurs.pdf - aufgabenblatt9.pdf |
17.01. | List Comprehensions | listco.pdf |
20.01. | Klassen | class.pdf - aufgabenblatt10.pdf |
24.01. | Vererbung | vererb.pdf |
26.01. | Reguläre Ausdrücke | regex.pdf - aufgabenblatt11.pdf |
31.01. | (Mehr zu) Funktionen | fafun.pdf |
7.02. | Fragestunde | |
9.02. | Abschlussklausur Stoff: Hauptsächlich alles ab 6.12. Zugelassene Hilfsmittel: 1 Blatt A4, doppelseitig beschrieben Zeitrahmen: 1h 30min Raum: HS 2, INF 306 Bringen Sie Ihren Studentenausweis mit. |