1. Algorithmen, Daten und Programme.- 1.1 Grundlegende Begriffe der Programmentwicklung.- 1.2 Aufgaben von Programmen.- 1.3 Ein einfaches Rechnermodell.- 1.4 Daten.- 1.4.1 Datentypen.- 1.4.2 Datenstrukturen.- 1.4.2.1 Array.- 1.4.2.2 Record.- 1.4.2.3 Datei.- 1.5 Befehlsarten.- 1.5.1 Bin-/Ausgabebefehle.- 1.5.2 Zuweisungsbefehle.- 1.5.3 Steuerbefehle.- Exkurs: Vereinbarungen.- 1.6 Programmbeispiel.- 1.7 Phasen der Programmentwicklung.- Aufgaben und Fragen zu Kapitel 1.- 2. Hilfsmittel der Algorithmenentwicklung.- 2.1 Programmablaufpläne.- 2.1.1 Symbole für Programmablaufpläne.- 2.1.2 Beispiele zur Anwendung von Programmablaufplänen.- 2.2 Struktogramme.- 2.2.1 Symbole für Struktogramme.- 2.2.2 Beispiele zur Anwendung von Struktogrammen.- 2.3 Entscheidungstabellen.- 2.3.1 Aufbau von Entscheidungsregeln.- 2.3.2 Beispiele zur Anwendung von Entscheidungstabellen.- Aufgaben und Fragen zu Kapitel 2.- 3. Entwurf und Gestaltung von Programmen.- 3.1 Grundsätze der Programmentwicklung.- 3.1.1 Mängel der „traditionellen“ Programmentwicklung.- 3.1.2 Forderungen an Programme.- 3.1.3 Allgemeine Grundsätze für die Gestaltung von Programmen.- 3.2 Entwurfsprinzipien.- 3.2.1 Hierarchische Programmstruktur.- 3.2.2 Top-down-Entwicklung von Algorithmen.- 3.2.2.1 Das Prinzip der stufenweisen Verfeinerung.- 3.2.2.2 Beispiel zur stufenweisen Verfeinerung.- 3.3 Methoden der Programmentwicklung.- 3.3.1 Strukturierte Programmierung.- 3.3.1.1 Strukturblöcke.- 3.3.1.2 Kontrolle des Programmablaufs.- 3.3.2 Normierte Programmierung.- 3.3.2.1 Normierung des Programmaufbaus.- 3.3.2.2 Normierung der Namensgebung.- Aufgaben und Fragen zu Kapitel 3.- 4. Programmstrukturen.- 4.1 Elementare Konstruktionen zur Algorithmenbildung.- 4.1.1 Sequenz.- 4.1.2 Selektion.- 4.1.2.1 Verzweigung.- 4.1.2.2 Fallunterscheidung.- 4.1.3 Repetition.- 4.1.3.1 While-Schleife.- 4.1.3.2 Zählschleife.- 4.1.3.3 Until-Schleife.- 4.1.3.4 Cycle-Schleife mit Unterbrechung.- 4.1.4 Beispiel zur Verwendung der Steuerkonstrukte.- 4.2 Programmsegmentierung.- 4.2.1 Begin-Blöcke.- 4.2.2 Unterprogramme.- 4.2.2.1 Parametrisierung von Unterprogrammen.- 4.2.2.2 Arten von Unterprogrammen.- 4.2.2.3 Rekursive Unterprogramme.- Exkurs: Programmsegmentierung zur Speicherplatzeinsparung.- Aufgaben und Fragen zu Kapitel 4.- 5. Spezielle Algorithmen.- 5.1 Verarbeitung von Arrays.- 5.1.1 Eindimensionale Arrays.- 5.1.2 Mehrdimensionale Arrays.- 5.2 Sortieren.- 5.2.1 Sortieren durch Bestimmung des minimalen Elements.- 5.2.2 Sortieren durch Vertauschen benachbarter Elemente („Bubble-Sort“).- 5.3 Fortschreibung einer Datei.- 5.3.1 Änderung von Datensätzen.- 5.3.2 Hinzufügen und Löschen von Datensätzen.- 5.4 Gruppenwechsel.- 5.4.1 Einstufiger Gruppenwechsel.- 5.4.2 Mehrstufiger Gruppenwechsel.- 5.4.3 Gruppenwechsel bei der Fortschreibung.- Aufgaben und Fragen zu Kapitel 5.- 6. Beziehungen zwischen Programmen und Dateien.- 6.1 Die Stellung des einzelnen Programms in der Gesamtaufgabe.- 6.2 Datenflußpläne.- Aufgaben und Fragen zu Kapitel 6.- 7. Programmiersprachen und Programmierung.- 7.1 Die Aufgabe einer Programmiersprache.- 7.2 Anforderungen an eine Programmiersprache und Umsetzung in Pascal.- 7.2.1 Umsetzung der Datenvereinbarungen.- 7.2.2 Umsetzung der Steuerkonstrukte.- 7.2.2.1 Sequenz.- 7.2.2.2 Verzweigung.- 7.2.2.3 Fallunterscheidung.- 7.2.2.4 While-Schleife.- 7.2.2.5 Until-Schleife.- 7.2.2.6 Zählschleife.- 7.2.2.7 Cycle-Schleife mit Unterbrechung.- 7.2.3 Ein-/Ausgabebefehle.- 7.2.4 Schrittweise Verfeinerung.- 7.2.5 Selbstdokumentation.- 7.2.6 Beispielsprogramme.- 7.3 Bekannte Programmiersprachen.- 7.3.1 Fortran.- 7.3.2 Cobol.- 7.3.3 Basic.- 7.3.4 Pl/1.- 7.3.5 Pascal.- 7.3.6 C.- 7.3.7 Weitere Programmiersprachen.- Anhang: Antworthinweise zu ausgewählten Aufgaben und Fragen.- Literatur.
Prof. Dr. Karl Kurbel ist Inhaber des Lehrstuhl für Wirtschaftsinformatik an der Europa-Universität Viadrina in Frankfurt/Oder.