Leitfäden und Monographien der Informatik Herbert Klaeren Vom Problem zum Programm

Ähnliche Dokumente
Leitfäden und Monographien der Informatik. K. Kiyek/F. Schwarz Mathematik für Informatiker 1

Stickel Datenbankdesign

Leitfaden und Monographien der Informatik B. Heinemann/K. Weihrauch Logik fur Informatiker

Leitfäden der angewandten Informatik. Richter / Sander / Stucky Problem - Algorithmus - Programm

Erziehung - Kunst des Möglichen

J. vom ScheidtlB. Fellenberg/U. Wöhrl. Analyse und Simulation stochastischer Schwingungssysteme

Einführung in die Informatik I (autip)

Christina Berghold. Die Szenario-Technik LEITFADEN. zur strategischen Planung mit Szenarien vor dem Hintergrund einer dynamischen Umwelt

Anpassungsstörung und Akute Belastungsreaktion

Einführung in die Informatik 1

Abrechnung und Mengenermittlung

Leitfaden der Informatik Lothar Schmitz Syntaxbasierte Programmierwerkzeuge

ADS. 1. Vorlesung. Techniken der Programmentwicklung Prof. Dr. Wolfgang Schramm

Methodisches Handeln in der Sozialen Arbeit

Hans-Jürgen Appelrath, Dietrich Boles, Volker (laus, Ingo Wegener. Starthilfe Informatik

Was ist Informatik? Alexander Lange

Theoretische Informatik

Inhaltsverzeichnis. Einführende Bemerkungen 11. Das Fach Informatik 11 Zielsetzung der Vorlesung Grundbegriffe

Pädagogische Psychologie

Otto G. Schwenk Soziale Lagen in der Bundesrepublik Deutschland

Depression bei Kindern und Jugendlichen

Festschrift für Prof. Dr.-Ing. Gerhard Iwan zum 60. Geburtstag

Einführung in Theorien und Methoden der Erziehungswissenschaft

Handlungsansätze für ein betriebliches Gesundheitsmanagement in Krankenhäusern

Konstruktivismus und Pädagogik

Logik. Vorlesung im Wintersemester 2010

Pädagogische Psychologie

Führungsstile im Vergleich. Kritische Betrachtung der Auswirkungen auf die Mitarbeitermotivation

Tierisch Pädagogisch

Die kritische Analyse eines Mindestlohnes für die Arbeitsmarktpolitik

Studienreihe Informatik. Herausgegeben von W. Brauer und G. Goos

und -implementierungstechniken, Datenbanken & Java.

Eine Arbeitsgemeinschaft der Verlage. utb 4401

Ressourcenorientierte Beratung und Therapie

Herausgegeben von Professor Dr. Nikolaus Franke Universität Wien, Wien, Österreich

Grundwissen Theologie Offenbarung. Bearbeitet von Klaus von Stosch

Siegfried J. Schmidt. Brigitte Spieß. Die Geburt der schönen Bilder

Das C-Teile-Management bei KMU

Prüfungsklausuren mit Lösungen Band 2014

Sozialpsychologie der Gruppe

Willkommen an der ETH Zürich

Bernhard Schreyer Manfred Schwarzmeier. Grundkurs Politikwissenschaft: Studium der Politischen Systeme

Einführung in die Montessori-Pädagogik

Produktinnovation im Versicherungswesen - Akzeptanzanalyse einer Produktidee

Klinische Untersuchung der Stütz- und Bewegungsorgane

Angst bei Kindern und Jugendlichen

Resilienz im Erwachsenenalter

Martin Scholz, Ute Helmbold (Hrsg.) Bilder lesen lernen

Die Big Five und ihre Auswirkungen auf das Gründungsverhalten

Die Besetzung und Fluktuation in der Clubführung der deutschen Fußball-Bundesliga

Karsten Roeser Training Fachkunde für Rechtsanwalts- und Notarfachangestellte

Pragmatisch-kommunikative Fähigkeiten fördern

Übungsbuch Mathematik für Fachschule Technik und Berufskolleg

Der Zahlenraum 100. Multiplikation - Division. Das kleine einmaleins. rechenschwäche (Dyskalkulie) vorbeugen. Name. Die Lernhefte!

Linux-Treiber entwickeln

Mit einem Vorwort von Bernhard Ringbeck

Allgemeine Pädagogik

Zahnbehandlungs- phobie

Unterwasserrugby für den Schulsport

Der Schwerpunkt des Kongresses lag in der Konzentration auf verfassungshistorische

Soziale Arbeit im Krankenhaus

Auswirkungen des Pendelns auf das subjektive Wohlbefinden

Kooperation und Vertrauen - Das Konzept der virtuellen Unternehmung als Organisationsform

Mathematik für Informatiker I

Armin Klein (Hrsg.) Gesucht: Kulturmanager

Anjes Tjarks. Familienbilder gleich Weltbilder

Prüfungstraining Wirtschaftsfachwirt: Rechnungswesen

Koch, VersicherungspHitze in Deutschland

Forum Logopädie. Herausgegeben von Luise Springer und Dietlinde Schrey-Dern. In dieser Reihe sind folgende Titel bereits erschienen:

Zweckgesellschaften und strukturierte Unternehmen im Konzernabschluss nach HGB und IFRS

Thomas Geisen. Arbeit in der Moderne

Alphabet, formale Sprache

Eine Arbeitsgemeinschaft der Verlage

Halle, England und das Reich Gottes weltweit Friedrich Michael Ziegenhagen ( )

Mit freundlichen Empfehlungen KARL STORZ

Gravitation und Physik kompakter Objekte

Assessments in der Rehabilitation

Katathym Imaginative Psychotherapie mit Kindern und Jugendlichen

Interdisziplinäre fachdidaktische Übung: Modelle für Sprachen in der Informatik. SS 2016: Grossmann, Jenko

Programmierkurs II. C und Assembler

Konzeptionelle Systemanalyse auf Basis energiepolitischer Rahmenbedingungen für die Zielgruppe der Wohnungsbaugesellschaften

Politikwissenschaft, Verwaltungswissenschaft, Soziologie

Springer essentials sind innovative Bücher, die das Wissen von Springer DE in kompaktester Form anhand kleiner, komprimierter Wissensbausteine zur

Funktionale Programmiersprachen

Anhang zum Buch. Was sagt Clementine zur lila Kuh? Fernsehwerbung analysieren und interpretieren. Nicola Berger

Inklusive Sprachförderung in der Grundschule

Dank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Probleme über Sprachen. Teil II.

Informatik. Teil 1 Wintersemester 2011/2012. Prof. Dr.-Ing. habil. Peter Sobe Fachkultät Informatik / Mathematik

Pirckheimer Jahrbuch für Renaissance- und Humanismusforschung

Langfristige Betrachtung der Sparquote der privaten Haushalte Deutschlands

Evangelisch in Ständestaat und Nationalsozialismus

Ratgeber Schlafstörungen

Theorien Multinationaler Unternehmungen im Vergleich

Vorsemesterkurs Informatik

UTB Eine Arbeitsgemeinschaft der Verlage

Logik für Informatiker

Praxis der Sprachtherapie und Sprachheilpädagogik Band 2

Staatsfonds und Beteiligungsunternehmen

Operations Research I

Strategisches Biodiversitätsmanagement durch den Einsatz einer Biodiversity Balanced Scorecard

Transkript:

Leitfäden und Monographien der Informatik Herbert Klaeren Vom Problem zum Programm

Leitfäden und Monographien der Informatik Herausgegeben von Prof. Dr. Hans-Jürgen Appelrath, Oldenburg Prof. Dr. Volker Claus, Oldenburg Prof. Dr. Günter Hotz, Saarbrücken Prof. Dr. Klaus Waldschmidt, Frankfurt Die Leitfäden und Monographien behandeln Themen aus der Theoretischen, Praktischen und Technischen Informatik entsprechend dem aktuellen Stand der Wissenschaft. Besonderer Wert wird auf eine systematische und fundierte Darstellung des jeweiligen Gebietes gelegt. Die Bücher dieser Reihe sind einerseits als Grundlage und Ergänzung zu Vorlesungen der Informatik und andererseits als Standardwerke für die selbständige Einarbeitung in umfassende Themenbereiche der Informatik konzipiert. Sie sprechen vorwiegend Studierende und Lehrende in Informatik-Studiengängen an Hochschulen an, dienen aber auch in Wirtschaft, Industrie und Verwaltung tätigen Informatikern zur Fortbildung im Zuge der fortschreitenden Wissenschaft.

Vom Problem zum Programm Eine Einführung in die Informatik Von Prof. Dr. rer. nato Herbert Klaeren Universität Tübingen 2., neubearbeitete und erweiterte Auflage B. G. Teubner Stuttgart 1991

Prof. Dr. rer. nato Herbert Klaeren Geboren 1950 in Gerolstein/Eifel. Studium der Mathematik und Informatik an der Universität Bonn (1969-1974). Wiss. Mitarbeiter am Institut für Angewandte Mathematik und Informatik an der Friedrich-Wilhelms-Universität Bonn (1975) und an der RWTH Aachen (1976-1982). Promotion 1980 bei K. Indermark. Akademischer Rat an der RWTH Aachen (1982-1988). Habilitation in Informatik (1988). Seit 1988 Professor für Informatik an der Eberhard-Karls-Universität Tübingen. Die Deutsche Bibliothek - CIP Einheitsaufnahme Klaeren, Herbert A.: Vom Problem zum Programm : eine Einführung in die Informatik I von Herbert K1aeren. - 2., neubearb. und erw. Aufl. - Stuttgart : Teubner, 1991 (Leitfäden und Monographien der Informatik) ISBN 978-3-519-12242-5 ISBN 978-3-322-93993-7 (ebook) DOI 10.1007/978-3-322-93993-7 Das Werk einschließlich aller seiner Teile ist urheberrechtiich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlages unzulässig und strafbar. Das gilt besonders für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen. B. G. Teubner Stuttgart 1991 Gesamtherstellung: Zechnersche Buchdruckerei GmbH, Speyer Umschlaggestaltung: M. Koch, Reutlingen

Vorwort Dieses Buch entstand aus Manuskripten des Autors zu Informatik-I-Vorlesungen an der Christian-Albrechts-Universität Kiel und der Eberhard KarIs-Universität Tübingen. An diesen Universitäten wird die Informatik I-Vorlesung außer von Hauptfachstudenten der Informatik und Nebenfachstudenten aus Mathematik und Physik und weiteren Naturwissenschaften auch von "fachfremden" Studenten der Studiengänge Wirtschaftswissenschaften (Kiel) und Allgemeine Sprachwissenschaft (Tübingen) besucht. Es kommt daher darauf an, neben einer allgemeinen Einführung in Methoden der Informatik und speziell der Programmierung Verständnis für das Wesen der Informatik ais einer formalen, der Mathematik nahe verwandten WISSenschaft zu wecken und im übrigen die notwendigen mathematischen Grundlagen innerhalb der Vorlesung selbst anzubieten. Das Buch eignet sich zu Informatik-Grundkursen für Natur- und Geisteswissenschaftler, aber auch zur Informatik-Nebenfachausbildung allgemein sowie, je nach Studienplan, auch für Informatik-I-Vorlesungen. Darüber hinaus ist es auch zu ejnem Selbststudium von Informatik-Grundkenntnissen geeignet. Es muß jedoch entsprechend dem Charakter der Informatik ein gewisses mathematisches Rüstzeug mitgebracht werden oder doch zumindest die Bereitschaft, sich dieses anzueignen. Im Anhang listen wir (im Sinne einer Festlegung von Notationen) die notwendigsten mathematischen Konstruktionen auf; darüber hinaus wird auf die angegebenen Lehrbücher verwiesen. Der Plan des Buchs ist wie folgt: Nach einer kurzen Einführung in die allgemeine Thematik behandeln wir in Kapitel 2 den Algorithmenbegriff. Voraussetzung für den Algorithmenentwurf ist die Erstellung einer Spezifikation für das zu lösende Problem. Dabei gehen wir hier von der vereinfachenden Vorstellung aus, daß die Leistung des zu erstellenden Programms die Berechnung einer Funktion im mathematischen Sinne ist. Unter diesen Bedingungen ist es sinnvoll, darauf zu bestehen, daß die Spezifikation formal abgefaßt und so präzise ist, daß sich ihre Einhaltung durch einen Algorithmus beweisen läßt. WIr stellen daher im Kapitel 2 neben einer formalen Notation ("Pseudocode") für Algorithmen-Zwischenstufen auch das grundlegende Rüstzeug für eine Verifikation von Algorithmen bereit.

6 Vorwort Jede Algorithmenentwicklung ist zum Scheitern verurteilt, solange man kein geistiges Modell der zugrundeliegenden Maschine hat. Im Kapitel 3 stellen wir daher die Registermaschine als ein einfaches, aber nicht ganz realitätsfernes Modell des Computers vor. Am Beispiel der Registermaschine wird auch die Problematik der Maschinenprogrammierung auf unterster Ebene vorgestellt. Gleichzeitig wird durch dieses Kapitel das Konzept der abstrakten Maschine eingeführt. Kapitel 4 stellt dann anhand einer einfachen Programmiersprache MlNI PASCAL, die eine echte Teilmenge von PASCAL ist, grundlegende Mechanismen höherer Programmiersprachen wie Blockstruktur und rekursive Prozeduren vor. Bei dieser Gelegenheit werden auch Mittel zur Beschreibung der Syntax und Semantik von Programmiersprachen vorgestellt. Anhand der dann folgenden Übersetzung von MINI-PASCAL in eine Maschinensprache wird deutlich gemacht, wie Blockstruktur und Rekursion auf der Maschinenebene realisiert werden. KapitelS stellt dann in knapper Form die weitergehenden Sprachkonzepte von PASCAL vor, die zur Programmierung abstrakter Datentypen notwendig sind. Diese werden in Kapitel 6 betrachtet. Dabei wird auch vorgeführt, wie man unendliche Mengen mit endlichen Hilfsmitteln konstruktiv beschreiben kann, und wie das sogenannte IIErzeugungsprinzip" bei der induktiven Definition zusammenhängt mit dem Prinzip der strukturellen Rekursion zur Definition von Abbildungen. Tübingen, Januar 1990 HERBERT KLAEREN Vorwort zur zweiten Auflage Die zweite Auflage stellt eine vollständige Neubearbeitung und Erweiterung dar. Besonders den Kollegen R. Giegerich und U. Güntzer bin ich für viele Hinweise zu Dank verpflichtet. Tübingen, Juni 1991 HERBERT KLAEREN Das Buch wurde auf einem IBM RISCSystem/6000 mit 1MB'" 2.09 CIEX 3.1) in Palatino Roman gesetzt. Die Programme zur Generierungder Syntaxdiagramme und der Abhängigkeitsgraphen sind von M. Seidel (p. 109-118) und P. Thiemann (p. 85,120).

Inhaltsverzeichnis 1 Einführung 9 1.1 Was ist Informatik?... 9 1.2 Geschichte der Programmierung................ 12 1.3 Problemlösen durch Algorithmen........... 17 2 Algorithmen und Spezifikationen 21 2.1 Spezifikationen... 21 2.2 Algorithmen........................... 31 2.3 Verifikation von Algorithmen................ 51 2.4 Termination und Rechenaufwand............. 60 2.5 Aufgaben... 70 3 Registermaschinen als Computermodell 73 3.1 Aufgaben... 94 4 Eine einfache Programmiersprache 95 4.1 Syntaktische Beschreibungsmittel... 96 4.1.1 Baclws-Naur-Form... 97 4.1.2 Erweiterte BNF.................... 103 4.1.3 Syntaxdiagramme............ 108 4.2 Syntax von Mini-Pascal..................... 111 4.3 Semantik von Mini-Pascal.................... 118 4.4 Übersetzung von Mini-Pascal in Maschinencode....... 127 4.5 Aufgaben... 140 5 Von Mini-Pascal zu Pascal 5.1 Aufgaben... 143 153 6 Abstrakte Datentypen 157 6.1 Einführung... 157 6.2 Natürliche Zahlen... 159 6.3 Wortmengen... 165 6.4 Terme... 168 6.5 Spezifikation abstrakter Datentypen... 175 6.6 Anwendungen abstrakter Datentypen... 179

8 Inhaltsverzeichnis 6.6.1 Folgen... 179 6.6.2 Binärbäume... 196 6.7 Aufgaben... 206 A Mathematische Grundlagen 208 A.1 Mengen, Relationen, Abbildungen............... 208 A.2 Formale Logik... 214 A.2.1 Aussagenlogik... 214 A.2.2 Prädikatenlogik... 217 A.3 Halbordnungen... 218 A.4 Aufgaben............................. 220 B Lösung der Übungen 221 C Literaturverzeichnis 233