The language was changed to English.

Course Type (SWS)
Lecture: 1 │ Exercise: 1 │ Lab: 1 │ Seminar: 0
Exam Number: ZKA 42101
Type of Lecture:

Lecture/Exercise: Presence lecture with projector, beamer, slides and usage of Power Point.

Lab: supervised programming exercises in groups of two students with self organised solutions in teams of two.

Language: English
Cycle: SS
ECTS: 3
Exam Type

Complete and successful participation in the lab.

Participation was complete if
- students participate in all lab experiments,
- the preparation tasks to all lab experiments were complete and correct,
- the required result of the lab experiments have been achieved independently complete and correct.


Further more the participation was successful only if the student reaches the required number of points in the initial test to every lab experiment. In the initial test students have to show knowledge in theory with regards to the lab experiments as well as to topics with regards to lecture and the exercises.

assigned Study Courses
assigned People
assigned Modules
Information
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.