Grundlagen der Programmierung 1

Wintersemester 2012/2013
Dozent: Prof. Dr. Stefan Böttcher

Die Veranstaltung wird über die koaLA-Plattform organisiert. Dort finden sich sämtliche Informationen und Materialien einschließlich der Organisation der Übungsgruppen. Melden Sie sich in PAUL für die Veranstaltung an. Die Anmeldung zu den Übungsgruppen nehmen Sie bitte in koaLA vor. Der Zeitpunkt zur Freischaltung der Übungsgruppenanmeldung wird in der ersten Vorlesung bekannt gegeben!

Veranstaltungsort und -zeit

Vorlesung

  • Dienstags 14 Uhr c.t. - 16 Uhr, Hörsaal L1
  • Mittwochs, 14 Uhr c.t. - 16 Uhr, Hörsaal L1
Zentralübung
  • Dienstags, 13 Uhr c.t., Hörsaal L1, erster Termin wird in Vorlesung bekannt gegeben

Übungsgruppen

ÜbungRaumTutor
01.Mo 14-16E1.303Stephan Arens 
02.D3.301Bastian Cramer
03.E1.111Dominic Weiß
04.Di 11-13D3.301Peter Folta
05.E1.303Jonas Heinisch
06.E1.111Sebastian Seitz
07.Di 16-18D3.301Sebastian Seitz
08.E1.303Adrian Bartnik
09.E1.111Andre Diekwisch
10.Mi 11-13D3.301Stephan Arens
11.E1.303Max Schettler
12.E1.111Andre Diekwisch
13.Mi 16-18D3.301Stephan Arens
14.E1.303Peter Folta
15.E1.111Stefan Schneider
16.Do 09-11D3.301Bastian Cramer
17.E1.303Sebastian Seitz
18.E1.111Andre Mueß
19.Do 14-16D3.301Bastian Cramer
20.E1.303Jonathan Rabe
21.Fr 09-11D3.301Andre Diekwisch
22.E1.111Dominic Weiß

Die Anmeldung zu den Übungsgruppen erfolgt bei Semesterbeginn in koaLA. Der genaue Zeitpunkt wird in der ersten Vorlesung bekannt gegeben.

Erste Vorlesung: Dienstag 9. Oktober UNIX Einführung
Erste Zentralübung: 23. Oktober
Übungsbeginn: Donnerstag 11. Oktober

Allgemeine Informationen

  • Die Vorlesung findet auf Deutsch statt.
  • Die Vorlesung ist Teil des Moduls I.1.1 im Bachelorstudiengang Informatik.
  • Leistungspunkte: 8 ECTS

Inhalte

Das Entwickeln von Software ist ein zentraler Tätigkeitsbereich in der Informatik. Software-Entwickler müssen Aufgaben analysieren und modellieren, Software-Strukturen entwerfen und diese in einer Programmiersprache implementieren können. Die Vorlesung vermittelt einführende und grundlegende Kenntnisse und Fähigkeiten in der Programmierung am Beispiel der in der Praxis relevanten, objektorientierten Programmiersprache Java.

Inhaltliche Gliederung:

  1. Einführung in die Java-Programmierung (Konstanten, Variablen, Ausdrücke, Zuweisung, Datentypen, Anweisungen, Funktionen, Arrays)
  2. Objektorientierte Programmierung (Klassen, Objekte, Attribute, Methoden, Vererbung, Kapselung, dynamische Methodenbindung, abstrakte Klassen)
  3. Grundlegende Programmiertechniken (Rekursion, Ausnahmenbehandlung)
  4. Abstrakte Datentypen (Strings, Wrapper, Wörterbücher, Listen, Bäume, Keller, Schlangen, Aufzählungen)

Umfang:

  • 4 SWS Vorlesung
  • 1 SWS Zentralübung
  • 2 SWS Übung

Übungen

Programmieren lernt man nur in der Praxis. Daher bieten wir Ihnen wöchentlich Übungsaufgaben, die die Themen der Vorlesung behandeln. Heimübungen lösen Sie in Kleingruppen von 2- max. 3 Personen und geben Ihre Lösung einmal pro Woche ab. Eine Aufgabe auf dem Heimzettel wird korrigiert und bepunktet. Durch diese Punkte können Sie in der Klausur einen Bonus erreichen, sofern Sie die Klausur bestehen. Des Weiteren können Sie eine Aufgabe markieren, die unbedingt durch den Tutor korrigiert werden soll.

Sie erhalten einen Bonusnotenschritt, wenn Sie in den Übungen mindestens 2 Mal vorgerechnet haben und 60% der Punkte auf den Hausübungen erreicht haben.

Sie erhalten zwei Bonusnotenschritt, wenn Sie in den Übungen mindestens 2 Mal vorgerechnet haben und 80% der Punkte auf den Hausübungen erreicht haben.

Zusätzlich haben Sie die Möglichkeit, in den wöchentlich stattfindenden Übungsgruppen Präsenzübungen zu bearbeiten. Dabei steht Ihnen ein Tutor als Ansprechpartner zur Verfügung.

Die Übungsaufgaben werden in das Koala-System eingestellt. Als Serviceleistung werden wir in der ersten Woche zusätzlich die Zettel auf diese Webseite unter Materialien stellen.

Ihre Lösungen geben Sie bitte schriftlich (auch den Quellcode!) in den Zettelkästen auf D3 ab. Die Lösungen von Programmieraufgaben schicken Sie bitte zusätzlich per Email an Ihren Tutor.

Bei weiteren Fragen  wenden Sie sich an Stephan Ahrens, Sebastian Seitz oder Bastian Cramer

Hier finden Sie Hinweise zur Installation von Java unter Windows XP. Das Vorgehen unter Windows 7 ist analog. Lediglich die Fenster sehen etwas anders aus.

Zwischentest

Die Termine für die Zwischentests sind 28.11.2012 und 19.12.2012.

Klausur

Nach der Vorlesungszeit wird es zwei Termine für die schriftliche Klausur geben. Um die Prüfung erfolgreiche abzuschließen, müssen Sie:

  1. einen unbenoteten Zwischentest erfolgreich bestehen und
  2. die schriftliche Klausur mit der Note 4.0 oder besser bestehen.

Wenn Sie die Prüfung bestanden haben, ergibt sich die Note aus der Klausurnote ggf. verbessert um 1 oder 2 Bonusnotenschritte.

Fragestunde zur Klausur

Am 11.2. von 10:45 - 13:00 Uhr wird es in E1.111 eine Fragestunde zur Klausur geben.

Materialien

Generell finden Sie alle Materialien im Koala-System.

1. Unix Einführung vom 9.10.2012
2. Unix Kurzreferenz

Präsenzzettel 1

HelloWorld.java

Heimzettel 1, Tipp1, Tipp2, Tipp3

Quelltext aus Übungszetteln kopieren Sie am Besten mit dem Adobe Acrobat Reader. Unter Linux ist dafür der Befehl "acroread" vorhanden.

Programmierwettbewerb

Gesucht ist die größte vollkommene Zahl. Die Ergebnisse werden hier veröffentlicht. Falls Sie eine größere Zahl gefunden haben, so schicken Sie bitte eine Email mit der Zahl und dem Java-Quellcode an Bastian Cramer. Geben Sie in der Betreffzeile bitte "Programmierwettbewerb: vollkommene Zahl gefunden" an. Die gefundene Zahl schreiben Sie bitte in den Rumpf der Email. Die Zahl sollte nur aus Ziffern bestehen und keine Trenner wie z.B. in 100.000 enthalten!

gefunden amNameZahlLänge
5.11.12 15:39David Mörs81284
4.11.12 32:03Jan Rau230584300813995212819
2.11.2012 16:41Adam Lahbabi2.6584559915698317E3637
2.11.2012 16:22Benedikt Kalde2.6584559915698317E3637
31.10.2012 20:34Björn Beckendorf1.4474011154664524E6465
2.11.2012 10:52Karsten Jungnitsch 3.3570832131986724E19371937
5.11.2012 21:33Marcel Schäefer1.1434731753038652E58345834
4.11.2012 9:12Sascha Joachim Holl 3.9596132128179421E67516751
13.11.2012 19:14Mirko Vogelsmeier8.1153776582351027E1397313973
2.11.2012 11:15Swante Scholz8.1153776582351027E1397313973
16.11.2012 11:06Swante Scholz3.6509351991571355E2679026790
7.11.2012 22:40Oliver Mangold3.6509351991571355E2679026790
19.11.2012 02:05Jan Beinke1.4414583617730395E5192451924
6.11.2012 22:23Björn Beckendorf1.4414583617730395E5192451924
5.11.2012 14:43Benedikt Kalde1.4414583617730395E5192451924
19.11.2012 19:59Jörn Ellerkamp & Tim Koch1.3620458213388462E6653066530
9.11.2012 8:29Björn Beckendorf2.7832745922032768E130100130100
18.11.2012 23:57Christopher Jordan 4.4823302617990891E1447146514471465

Kontakt

Bei Fragen zur Organisation:  Stephan Ahrens, Sebastian Seitz oder Bastian Cramer

Impressum | Webmaster | Letzte Änderungen am : 16.10.2013