Veranstaltungsarten (SWS)
Vorlesung: 1 │ Übung: 1 │ Praktikum: 1 │ Seminar: 0
Prüfungsnummer: ZKA 42101
Lehrform:

Präsenzveranstaltung Projektor, Folien, mit Beamer und Einsatz von Power Point.

Praktikum: betreute Rechnerübung, eigenständiges Lösen von Programmieraufgaben in Zweiergruppen. 

Sprache: Englisch
Turnus: SS
ECTS: 3
Prüfungsleistung

Vollständige und erfolgreiche Teilnahme am Praktikum

Die Teilnahme war vollständig,
- wenn an allen Versuchen teilgenommen wurde,
- wenn die zu den jeweiligen Versuchen geforderten Vorbereitungsaufgaben vollständig und korrekt gelöst wurden,
- wenn die zu den jeweiligen Versuchen geforderten selbständige Leistung vollständig und korrekt erbracht wurde.

Darüber hinaus war die Teilnahme nur dann erfolgreich, wenn in den Antestaten zu den einzelnen
die geforderten Punktzahlen erreicht wurden. Die Antestate fragen neben der Theorie zu den Versuchsinhalten auch darüber hinausgehendes Wissen, wie es in Vorlesung und Übung vermittelt wird, ab.

zugeordnete Studiengänge
zugeordnete Personen
zugeordnete Module
Informationen
Beschreibung:

Vorlesung und Übung vermitteln die grundlegenden Techniken des modularen und strukturierten Programmaufbaus. Studierende erlangen Verständnis für Denkweise und Prinzipien des prozeduralen Programmierens. Dazu werden sie zunächst anhand von Beispielen in die algorithmische Methodik eingeführt, anschließend erlangen sie das Verständnis der prozedurale Umsetzung zuerst in allgemein verständlicher Form, anschließend über die Programmiersprache C.
Das Verständnis wird in Vorlesung und Übung wie folgt eingeführt:
- Algorithmen, Top-Down- und Bottom-Up-Entwurf;
- Vom Algorithmus zum Programm, vom Problem zur algorithmischen Lösung;
- Atomare Datentypen und deren Ein- und formatierte Ausgabe;
- Ausdrücke und Anweisungen;
- Datenstrukturen und Funktionen;
- Zeiger und Adressen;
- Dynamische Speicherreservierung und Speicher-Management-Funktionen;
- Einfache dynamische Datenstrukturen: Listen, Kellerstapel, Warteschlangen;
- Einfache Such- und Sortierverfahren;
- Aufgaben von Präprozessor, Übersetzer und Binder.

Im Praktikum lernen die Studierenden, mit den in Vorlesung und Übung erworbenen Kenntnissen praktische Beispiele selbständig zu implementieren.

Lernziele:

Die Studierenden kennen und verstehen die grundlegenden Konzepte der prozeduralen Programmierung. Sie können kleinere Problemstellungen und Beispiele algorithmisch aufarbeiten und in der Programmiersprache C selbständig implementieren. Sie sind in der Lage, sich selbständig in andere prozedurale Programmiersprachen einzuarbeiten.

Literatur:

1. Brian W. Kernighan, Dennis M. Ritchie: The C Programming Language. Prentice Hall International, 1988, 2nd edition, ISBN: 978-0-131-10362-7
2. K. N. King: C Programming: a modern approach. W. W. Norton & Company, 2008, 2nd edition, ISBN 978-0-393-97950-3.
3. R. Sedgewick: Algorithms in C. Prentice Hall, 2009, ISBN 978-0-768-68233-5
4. P. Deitel, H. Deitel, A. Deitel: C for Programmers. Prentice Hall, 2013, ISBN: 978-0133462067
5. V. Anton Spraul: Think like a programmer: an introduction to creative problem solving. No Starch Press, 2012, ISBN 978-1-59327-424-5

Vorleistung:
Infolink:
Bemerkung:

Die Veranstaltung „Fundamentals of Programming (FoP)“ wird mit der Veranstaltung „Procedural Programming (PP)" fusioniert.

PP hat den Veranstaltungstermin von FoP für die Vorlesung übernommen und den Übungstermin von FoP belassen.

Description:

In lecture and exercises, students receive first understanding of fundamental techniques needed for development of modular and structured programs. In doing so, they get understanding of basic algorithms and their procedural implementation. This will be learned first by examples for general algorithmic thinking, then also by implementations in the programming language C.
Understanding is stimulated in lecture and exercises as lfollows:
- introduction;
- algorithms, top-down- and bottom-up-design;
- from algorithm to program, from problem to algorithmic solution;
- atomic data types and their input and formatted output;
- expressions, statements and functions;
- data structures and functions;
- pointers and addresses;
- dynamic memory allocation and memory management functions;
- simple dynamic data structures: lists, stacks, queues.
- simple searching and sorting methods;
- task of preprocessor, compiler and linker;

In the lab, students learn to use the knowledge gained from lecture and exercise by implementing practical programming examples.

Learning Targets:

The students know and understand the basic concepts of procedural programming. Small problems and examples can algorithmically analysed and implemented in C by them on their own. They are able to teach themselves different other procedural programming languages.

Literature:

1. Brian W. Kernighan, Dennis M. Ritchie: The C Programming Language. Prentice Hall International, 1988, 2nd edition, ISBN: 978-0-131-10362-7
2. K. N. King: C Programming: a modern approach. W. W. Norton & Company, 2008, 2nd edition, ISBN 978-0-393-97950-3.
3. R. Sedgewick: Algorithms in C. Prentice Hall, 2009, ISBN 978-0-768-68233-5
4. P. Deitel, H. Deitel, A. Deitel: C for Programmers. Prentice Hall, 2013, ISBN: 978-0133462067
5. V. Anton Spraul: Think like a programmer: an introduction to creative problem solving. No Starch Press, 2012, ISBN 978-1-59327-424-5

Pre-Qualifications:
Info Link:
Notice:

The lecture "Fundamentals of Programming (FoP) will be merged with the lecture "Procedural Programming (PP)".

PP takes over the schedule date from FoP for the lecture, whereas the schedule date for the lab is the same as FoP.