"Programmierung I" (Strukturiertes Programmieren I) (B1AI2) im Studiengang "Angewandte Informatik"

Wintersemester 2009/2010


Gliederung

Termine Aktuelle Informationen Übungen
Übungsgruppen Belegarbeiten Benotung
Durchführung der Übungen und Belegarbeiten Durchführung der Klausur Literatur

Termine

  Vorlesung Übung
Zeit:

dienstags 12:00 - 13:30 Uhr (3.E)

dienstags 13:45 - 17:00 Uhr (4. + 5.E) im wöchentlichen Wechsel
Gruppe 1: ungerade Woche
Gruppe 2: gerade Woche

Ort: Raum C 258 Labor C 635 L
Lehrkraft: H. Hansen  


Aktuelle Informationen

14.1.2010
Aus dieser neuen Version der Daten für die 2. Belegaufgabe sind die Umlaute und überflüssigen Leerzeichen entfernt! Vielen Dank an die Studierenden, die mich darauf aufmerksam gemacht haben!

28.12.2009
Hier ist jetzt die 2. Belegaufgabe zusammen mit den Daten!

23.11.2009
Und hier kommen die in der Aufgabenstellung versprochenen Testdaten in den Dateien Rechnungsdaten0.txt und Rechnungsdaten1.txt . Die letztere Datei kann nur richtig bearbeitet werden, wenn alle Extras implementiert wurden!

27.10.2009
Hier finden Sie jetzt die 1. Belegaufgabe!

18.9.2009
Die Lehrveranstaltung beginnt am 6.10.2009 mit der Vorlesung.
Für die Übungsgruppen gilt die durch das LSF festgelegte Einteilung!


Vorlesungs- und Übungstermine

Hier finden Sie alle Vorlesungs- und Übungstermine mit den geplanten Inhalten.

Alle Folien zur Lehrveranstaltung werden nach und nach hier als PDF-Dateien zur Verfügung gestellt, wobei vier Folien auf einer Druckseite angeordnet sind, um beim (eventuellen) Ausdruck Papier zu sparen.

Datum
Art
Gruppe
Themen
Version vom
Foliensatz
6.10. V  

Ausfall wegen Einführungsveranstaltungen für Erstsemester

 

6.10.
Ü
1

Ausfall wegen Einführungsveranstaltungen für Erstsemester



13.10. V   Organisation: Festlegungen zur Benotung, Klausur, usw.
Organisation der Übungsgruppen
Besprechung der Vorkenntnisse
Inhalte der Lehrveranstaltung
   
13.10. Ü 2 Einführung in das Labor; Erstellen, Übersetzen und Ausführen des Programms "HelloWorld.c" . Funktionsbegriff. Benutzung von parameterlosen Funktionen am Beispielprogramm "Visitenkarte"    
20.10. V   Überblick Softwareentwicklungsprozeß; Programmiersprache, Programmieren, Algorithmus. Einführung in Funktionen

14.10.2009

14.10.2009

Programmieren

Funktionen

20.10. Ü 1 siehe 13.10.    
27.10. V   Ausgabe der ersten Belegarbeit; Funktionen in der Mathematik und in der Informatik (Fortsetzung); Basisdatentypen in der Informatik — Basisdatentypen in C. 9.11.2009 Basisdatentypen
27.10. Ü 2 Ausgabe einer ASCII-Codetabelle durch ein einfaches C-Programm; Verarbeitung von Kommandozeilenargumenten in C; Byteweises Kopieren einer Datei: Dateiein- und -ausgabe; Dokumentation von C-Programmen mit Hilfe des Werkzeugs "doxygen".    
3.11. V   Variablen in der Mathematik und Variablen in der Informatik: Variablen als "Behälter" für Werte. 9.11.2009 Variablen
3.11. Ü 1 siehe 27.10.    
10.11. V   Konstanten als spezielle Variablen; "Globale" und "lokale" Konstanten und Variablen; Ein- und Ausgabefunktionen von C: formatierte und unformatierte Eingabe.

9.11.2009

16.12.2010

16.12.2010

Konstanten

EA-Funktionen von C

Datei-EA

10.11. Ü 2 Formatierte Ausgabe von Daten; Formatierte Eingabe von Daten; Unformatierte Eingabe von Daten; Überprüfen von Eingabedaten mit Hilfe von Zeichenarten.    
17.11. V   Ein- und Ausgabe mit Dateien; Methoden des Programmentwurfs: Struktogramme und Flußdiagramme. 16.12.2010 Programmentwurf
17.11. Ü 1 siehe 10.11.    
24.11. V   Fortsetzung: Methoden des Programmentwurfs: Struktogramme und Flußdiagramme    
24.11. Ü 2 Parameterübergabe von Variablen und Feldern in C; Datumsbearbeitung; Statische Variablen; Erkennung des Dateiendes beim Einlesen von Daten; Konstanten zu Zahltypen; Probleme der Ganzzahlarithmetik; Probleme der Gleitkommaarithmetik; Verwendung von Operatoren    
1.12. V   Ausfall wegen Dienstunfall HH    
1.12. Ü 1 siehe 24.11.    
8.12. V   Programmdokumentation; Gute Programme; Standardbibliotheken von C;

16.12.2010

16.12.2010

16.12.2010

Programmdokumentation

Gute Programme

Standardbibliotheken von C

8.12. Ü 2 Abgabe der 1. Belegarbeit    
15.12. V   Operatoren; Wertanpassung: automatische und explizite; Strukturierte Datentypen: Motivation, Syntax.

16.12.2010

16.12.2010

16.12.2010

Operatoren

Wertanpassung

Strukturierte Datentypen

15.12. Ü 1 Abgabe der 1. Belegarbeit    
22.12. V   Strukturierte Datentypen (Fortsetzung); Aufzählungstypen: implementierungstechnische Mängel 26.1.2010 Aufzählungstypen
22.12. Ü 2 Programmieren mit strukturierten Datentypen: Student; Strukturierte Datentypen als Teil anderer strukturierter Datentypen.    
5.1. V   Aufteilung von größeren C-Quelltexten auf mehrere Dateien: Motivation, Kriterien für die Aufteilung. Headerdateien, Quelldateien und Objektdateien. Getrennte Übersetzung von Programmquellen. Probleme und deren Beseitigung bei der Verwendung von Bibliotheken. 26.1.2010 Headerdateien
5.1. Ü 1 siehe 22.12.    
12.1. V   Hilfsmittel zur Projektorganisation: make und ant. 26.1.2010 Projektorganisation
12.1. Ü 2 Strukturierte Datentypen mit zugehörigen Funktionen: Komplexe Zahlen; Verwendung von make.    
19.1. V   Testen von Programmen: Testmethoden. Hilfsmittel gegen Programmfehler: Assertions in C-Programmen.

26.1.2010

26.1.2010

Testen

Assertions

19.1. Ü 1 siehe 12.1.    
26.1. V  

Ziele von C: Systemprogrammierung; Weitere Hilfsmittel zur Verbesserung von C-Programmen: "lint" und seine Weiterentwicklung "splint".

26.1.2010

26.1.2010

Ziele von C

Programmierhilfsmittel

26.1. Ü 2 Abgabe der 2. Belegarbeit    
2.2. V   bestätigter Klausurtermin    
2.2. Ü 1 Abgabe der 2. Belegarbeit    
9.2. V   eventuell Klausureinsicht und Nachbesprechung der Lehrveranstaltung    
9.2. Ü 2      

Übungen


Hier finden Sie die Übungsbeispiele für die Übungen.


Übungsgruppen

In der folgenden Tabelle finden Sie nach Beginn der Lehrveranstaltung zu Ihrer Erinnerung die Teilnehmer der beiden Übungsgruppen. Bitte denken Sie daran, daß diese Einteilung für die Abgabe der Belegarbeiten verbindlich ist. Wer hier nicht aufgeführt ist, muß am ersten Abgabetermin abgeben!
Wer nicht in der für seine Gruppe geplanten Woche abgibt, der gibt verspätet ab - mit entsprechenden Konsequenzen für die Benotung!
 

Nr 

Übungsgruppe 1
Beginn am 13.10. (gerade Wochen)

  Übungsgruppe 2
Beginn am 6.10. (ungerade Wochen)
Bähtz, Tom   Afeldt, Madlen
Bär, Sebastian   Akkaya, Cihan
Bartock, Jan   Auerbach, Dominic
Baskaya, Bilal   Behrens, Philipp
Behla, David   Beutler, Robert
Bergmann, Andre   Borck, Patrick
Beutling, Max   Bruch, Peter
Blasche, Matthias   Dobra, Philipp
Bull, Andreas   Heine, Maik
10  Bütow, Bryan   Heinke, Jonas
11  Doukali, Mounib   Khastagir, Shuvra
12  Haase, Ronny   Kieß, Martin
13  Henschke, Stefan   Kochan, Karsten
14  Jansen, Matthias   Manthey, Maik
15  Kather, Marcus   Manzey, Peter
16  Luth, Isabell   Marttinen, Max
17  Mackeprang, Maximilian   Marx, Juliane
18  Nawrot, Sascha   Mehls, Thorsten
19 Nickel, Lisa   Müller, Lukas
20 Nowaszynski, Tim   Popp, Felix
21 Rebel, Marcel   Rößler, Dirk
22 Rüttermann, Julijan   Schneider, Rico
23 Sallem, Souhaila   Stamp, Robert
24 Schumann, Dennis   Steffen, Frederik
25 Trost, Sascha  

Wels, Philippe

26 Mallschlaeger, Marcel   Zuchowski, Daniel


Belegarbeiten

Beachten Sie bitte bei der Erstellung Ihrer Programme die Programmierrichtlinien.


Benotung

Mit seiner Belegung der Lehrveranstaltung akzeptiert jeder Studierende die folgenden Festlegungen:
Die in der Vorlesung und in den Übungen erworbenen Kenntnisse werden getrennt benotet. Die Gesamtnote zur Veranstaltung ergibt sich dann als das (nach den Stundenanteilen) gewichtete Mittel aus den beiden Noten. In dieser Veranstaltung gehen also beide Noten mit jeweils 50 % ein.

Die Note zu den Übungen ergibt sich zu 50 % aus der Note der 1. Belegarbeit und zu 50 % aus der Note der 2. Belegarbeit.

Zur Notengebung beachten Sie bitte die Festlegungen aus der Rahmenprüfungsordnung der FHTW:

Wenn also alle Anforderungen für die gestellte Aufgabe erfüllt sind, so wird das mit der Note 3,0 bewertet. Wenn die Durchführung der Aufgabe sehr sauber und sorgfältig erfolgt ist, führt das zur Benotung 2,3. Wenn über die Anforderungen hinaus mehr oder besonders gute Leistungen erbracht wurden, so führt auch das zu einem Notenbonus. Was derartige besondere Leistungen sein könnten, wird vom Dozenten bei Ausgabe der Belegarbeit in der Vorlesung erläutert.
Wenn nicht alle Anforderungen erfüllt sind, so hat das Notenabschläge zur Folge. Eine Aufgabe gilt als nicht gelöst, wenn das Programm falsche Ergebnisse produziert oder "abstürzt" — somit Note 5. Vom Dozenten bereitgestellte Daten sind Testdaten, d.h. das Programm muß natürlich nicht nur für diese Daten korrekte Ergebnisse liefern!!!
Eine verspätete Abgabe führt zu einem Notenabschlag von mindestens 2 Stufen. (Eine befriedigende Lösung (Note 3,0), die zu spät abgegeben wird, wird also z.B. mit 3,7 bewertet.) Verspätete Abgaben müssen innerhalb der auf den Abgabetermin folgenden Woche erfolgen. Noch spätere Abgaben gibt es nicht — die nicht erbrachte Teilleistung wird mit der Note 5 bewertet.

Achtung!

Eine erfolgreiche Teilnahme an der Lehrveranstaltung setzt voraus, daß beide Belegarbeiten bearbeitet und jede mit der Note 4 oder besser bewertet wird. Die Klausur muß ebenfalls mit der Note 4 oder besser bewertet sein.
Das heißt also, daß die Lehrveranstaltung vollständig wiederholt werden muß, wenn eine der Belegarbeiten nicht mit ausreichend beurteilt wurde bzw. wenn die Klausur und eventuell die Nachklausur schlechter als ausreichend ausgefallen ist.


Durchführung der Übungen und Belegarbeiten

Jeder Teilnehmer der LV erhält eine Benutzerkennung und ein Paßwort. Unter dieser Benutzerkennung kann er seine Übungsaufgaben bearbeiten. Die Übungsräume im Gebäude C stehen derzeit von 8.00 - 18.00 Uhr für die Bearbeitung der Belegarbeiten zur Verfügung, sofern sie nicht durch eine andere Veranstaltung belegt sind. Es steht ein Fileserver zur Verfügung.

Alles, was im Rahmen der LV an Texten, Programmen und Daten anfällt, kann auf dem privaten Nutzerbereich auf dem Fileserver im jeweiligen Teilnehmerverzeichnis abgelegt werden. Bitte beachten Sie, daß Sie für Ihre auf dem Fileserver abgelegten Daten selbst verantwortlich sind. Die Laboringenieure des Studiengangs "Angewandte Informatik" führen zwar regelmäßige Backups durch - dennoch kann nicht gewährleistet werden, daß bei Hardwareproblemen die aktuellsten Dateien wieder hergestellt werden können. Deshalb sollten Sie selbst durch Kopien auf anderen Medien oder per Netzwerk für die Verfügbarkeit Ihrer Daten sorgen! (Datenverlust als Ausrede für eine verspätete Abgabe ist also ein denkbar ungeeignetes Argument.)

Jeder Student muß Übungsaufgaben als Belegarbeiten zur Benotung abgeben. Die Belegarbeiten werden von jedem Studenten einzeln bearbeitet. Die Belegarbeiten werden dem Dozenten persönlich abgegeben, wobei eine Vorführung des jeweiligen Programmes am Laborrechner im für die Lehrveranstaltung vorgesehenen Raum erfolgt.
Verspätete Abgaben werden nur bei Krankheit akzeptiert - im anderen Fall führen sie zu einer schlechteren Bewertung (siehe oben).


Durchführung der Klausur

In der Klausur sind keine Hilfsmittel zugelassen.


Literatur

Die Bücher, aus denen ich Teile für diese Veranstaltung verwende, sind - geordnet nach Wichtigkeit - die folgenden:

Autor Titel Erscheinungsort

ISBN

Programmiersprache C      
House, R. Beginning with C International Thompson Publishing, 1994 0-534-94122-2
Kernighan, B.W., Ritchie, D.M. Programmieren in C Carl Hanser Verlag, 1983 3-446-13878-1
Programmiersprache C++      
Breymann, U. C++ - Eine Einführung 3. Auflage; Carl Hanser Verlag, 1996 3-446-18498-8
Stroustrup, B. The C++ Programming Language 2. Auflage; Addison-Wesley Publishing Company, 1991 0-201-53992-6
Softwaretechnik      
Hering, Ekbert Software-Engineering 3. Auflage; Vieweg-Verlag, 1992 3-528-24284-1
Algorithmen und Datenstrukturen      
Horovitz, E., Sahni, S., Anderson-Freed, S. Grundlagen von Datenstrukturen in C International Thompson Publishing GmbH, 1994 3-929821-00-1

Weitere Bücher zur Einführung in die Programmierung und zur Programmiersprache C finden Sie in der Bibliothek der FHTW oder anderen Bibliotheken. Da die Menge der Bücher zum Programmieren in C und C++ unüberschaubar groß ist, verzichte ich hier auf eine Vorstellung.
Eine Übersicht über Bücher zu dem Thema der Lehranstaltung finden Sie auch bei Lehmann's Online-Bookshop oder in anderen Bücherläden.


Letzte Änderungen am 28.01.2010 --- Email: Horst dot Hansen at FHTW-Berlin dot DE

<= Homepage von Horst Hansen <= Homepage des Servers