Inhalt. 1. Einführung in die Informatik. 2. Algorithmen Definition, Eigenschaften, Entwurf Darstellung von Algorithmen Beispiele.

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

1. Grundlegende Konzepte der Informatik

Überblick. 1 Vorbemerkungen. 2 Algorithmen. 3 Eigenschaften von Algorithmen. 4 Historischer Überblick. Einführung

Einführung in die Informatik I (autip)

Einführung in die Informatik Algorithms

Theoretische Informatik Kap 2: Berechnungstheorie

4) Lösen linearer Gleichungssysteme mit zwei oder drei Unbekannten

13. Funktionen in einer Variablen

Berechenbarkeit. Script, Kapitel 2

Inhaltsverzeichnis Mathematik

1. Einführung. Was ist ein Algorithmus (eine Datenstruktur)? Welche Probleme kann man damit lösen? Warum betrachten wir (effiziente) Algorithmen?

Funktionen. 1. Einführung René Descartes Cartesius (Frankreich, )

Mathematik 1 für Wirtschaftsinformatik

2. Algorithmen und Algorithmisierung Algorithmen und Algorithmisierung von Aufgaben

Funktionen. Funktionsbegriff Einführende Beispiele und Erklärungen Grundwissen. Beispiele zu den wichtigen Funktionsarten des Mathematikunterrichts

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

Einführung in die linearen Funktionen. Autor: Benedikt Menne

Funktionen in der Mathematik

Grundlagen der Informatik I (Studiengang Medieninformatik)

Mathematik I Herbstsemester 2014

3. Mathematische Maschinen

2. Spezielle anwendungsrelevante Funktionen

MatheBasics Teil 3 Grundlagen der Mathematik

FUNKTIONEN. ein Leitprogramm für die Berufsmaturität

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)

Coma I. Einleitung. Computer und Algorithmen. Programmiersprachen. Algorithmen versus Programmiersprachen. Literaturhinweise

WS 2009/10. Diskrete Strukturen

4: Algebraische Strukturen / Gruppen

Theoretische Informatik SS 03 Übung 3

Grundkompetenzen (Mathematik Oberstufe)

Einführung in die Informatik Algorithms

A2.3 Lineare Gleichungssysteme

Nichtlineare Gleichungssysteme

1.1 Mengen und Abbildungen

Zahlen und Funktionen

Einführung in die Informatik I

Brückenkurs. Beweise. Anja Haußen Brückenkurs, Seite 1/23

STOFFPLAN MATHEMATIK

Basistext Funktionen. Eine Funktion f ordnet jedem Element x aus einer Definitionsmenge D f genau ein Wert y zu.

Übungen zu Einführung in die Lineare Algebra und Geometrie

Lineare Gleichungssysteme

Bestandteile Ihres Vortrags: Fachlicher Hintergrund (Schulbücher, ) Aufgabenstellung

Die Taylorreihe einer Funktion

3. Relationen Erläuterungen und Schreibweisen

Mathematik für das Ingenieurstudium

00. Einiges zum Vektorraum R n

Komplexität von Algorithmen

Einführung in die Informatik 1

Inhalt. 1 Rechenoperationen Gleichungen und Ungleichungen... 86

Differenzengleichungen. und Polynome

Mathematik. Februar 2016 AHS. Kompensationsprüfung 1 Angabe für Kandidatinnen/Kandidaten

Polynominterpolation

Funktionale und prädikative Denkstrukturen in der Sekundarstufe 2. Mathematik und Geschlecht Bernhard Bodenstorfer JKU

Mathematik II Frühlingsemester 2015 Kap. 9: Funktionen von mehreren Variablen 9.1 Einführung

3.6 Eigenwerte und Eigenvektoren

Strahlensätze anwenden. ähnliche Figuren erkennen und konstruieren. ähnliche Figuren mit Hilfe zentrischer Streckung konstruieren.

1 Vom Problem zum Programm

9.2 Invertierbare Matrizen

MATHEMATIK 3 STUNDEN

Algorithmen & Programmierung. Rekursive Funktionen (1)

Kostenmodell. Daniel Graf, Tobias Pröger. 22. September 2016 (aktualisierte Fassung 5 vom 9. Oktober 2016)

Diplom Mathematiker Wolfgang Kinzner. 17. Oktober Technische Universität München. Die abc-formel. W. Kinzner. Problemstellung.

Die Menge C der komplexen Zahlen wird im Kapitel Weitere Themen behandelt.

1.3 Funktionen einer reellen Veränderlichen und ihre Darstellung im x, y - Koordinatensystem

Mengen und Abbildungen

8 Komplexitätstheorie und Kryptologie

Kosten und Umsatzfunktionen

Proseminar Einführung in die Mathematik 1 WS 2010/11 2. Dezember 2010 Lösungen

Zahlen und elementares Rechnen

Einstieg in die Informatik mit Java

1 x x2 3 mit D f = IR. Teilaufgabe 1.1 (5 BE) Berechnen Sie die Nullstellen der Funktion f und geben Sie das Symmetrieverhalten von G f.

Zuammenfassung: Reelle Funktionen

Erzeugende Funktionen

Elementare Wirtschaftsmathematik

Mathematik 1 für Naturwissenschaften

4.1. Grundlegende Definitionen. Elemente der Analysis I Kapitel 4: Funktionen einer Variablen. 4.2 Graphen von Funktionen

Schulinterner Lehrplan Mathematik Einführungsphase Oberstufe

6. Funktionen von mehreren Variablen

Prof. Dr. Rolf Linn

AES und Public-Key-Kryptographie

F u n k t i o n e n Quadratische Funktionen

Kapitel 2. Kapitel 2 Natürliche und ganze Zahlen

Folgen und Reihen. 1. Folgen

Funktionale Programmiersprachen

Lineare Gleichungssysteme

Einführung in die C++ Programmierung für Ingenieure

Abstrakte Algorithmen und Sprachkonzepte

Schuleigener Kompetenzplan für das Fach Mathematik Jahrgang 9 Stand 2008 Lehrbuch: Mathematik heute 9

Algebra und Diskrete Mathematik, PS3. Sommersemester Prüfungsfragen

37 Gauß-Algorithmus und lineare Gleichungssysteme

Direkt und indirekt proportionale Größen

Matrizenrechnung am Beispiel linearer Gleichungssystemer. für GeoGebraCAS

Diskrete Strukturen Kapitel 2: Grundlagen (Relationen)

Collegium Josephinum Bonn Mathematik, Jg. 5

Arithmetik und Algebra

24 KAPITEL 2. REELLE UND KOMPLEXE ZAHLEN

Musteraufgaben Fachoberschule 2017 Mathematik

Mengen, Funktionen und Logik

WS 2009/10. Diskrete Strukturen

WURZEL Werkstatt Mathematik Polynome Grundlagen

Transkript:

1. Einführung in die Informatik Inhalt 2. Algorithmen Definition, Eigenschaften, Entwurf Darstellung von Algorithmen Beispiele Peter Sobe 1

Einführende Beispiele 2. Algorithmen Täglich werden Verarbeitungsvorschriften ausgeführt, die einen Weg beschreiben, wie ein gewünschtes Ergebnis erzielt werden kann. Solche Vorschriften sind: Bedienungsanleitungen zum Beispiel zur Bedienung eines Parkscheinautomaten Montageanleitungen für Möbel, für Modellbaukästen, usw. Verhaltensvorschriften Verhalten bei Unfällen, Feueralarm, usw. Rezepte Mischen von Farben, Kochrezepte, usw. Rechenvorschriften Lösen eines Gleichungssystems, Ermittlung statistischer Kenngrößen, Stöchiometrie (Chemisches Rechnen), Bestimmung von Flächeninhalten, usw. Peter Sobe 2

Algorithmen Algorithmen sind spezielle Verhaltensvorschriften, die gewisse Mindestanforderungen erfüllen müssen. Algorithmendefinition In diesem Abschnitt soll der Algorithmenbegriff etwas genauer präzisiert werden. In der Literatur gibt es dazu verschiedene Definitionen. Drei solcher Definitionen sollen hier kurz angegeben werden: Peter Sobe 3

Algorithmen 1. Ein Algorithmus ist eine eindeutige Vorschrift zur Lösung einer Aufgabe. Die Vorschrift besteht aus einer Folge von Anweisungen. Die Anweisungen beziehen sich auf Operationen, die jeweils den nächsten Lösungsschritt veranlassen. Die Anzahl der auszuführenden Lösungsschritte ist endlich und ihre zeitliche Reihenfolge liegt fest. 2. Ein Algorithmus ist eine präzise, d.h. in einer festgelegten Sprache abgefasste, endliche Beschreibung eines allgemeinen Verfahrens unter Verwendung ausführbarer elementarer Verarbeitungsschritte. 3. Ein Algorithmus ist eine detaillierte und explizite Vorschrift zur schrittweisen Lösung eines Problems. Im einzelnen bedeutet dies: Die Ausführung erfolgt in diskreten Schritten Jeder Schritt besteht aus einer einfachen, offensichtlichen Grundaktion Zu jedem Zeitpunkt muss eindeutig bestimmt sein, welche Schritte als nächste auszuführen sind. Peter Sobe 4

Algorithmen Definition: Ein Algorithmus ist eine Vorschrift zur Lösung einer Klasse von Problemen. Er besteht aus einer endlichen Folge von Schritten, mit der aus bekannten Eingangsdaten neue Ausgangsdaten eindeutig berechnet werden können. Eigenschaften: Die Definition zeigt den engen Zusammenhang mit Funktionen (Eingangsdaten Ausgangsdaten). Die Definition bindet den Algorithmus an die Lösung einer Klasse von Problemen und nicht an eine einzelne Aufgabe. Problem: Die Definition eines Algorithmus enthält keine Forderungen an die praktische Ausführbarkeit des Algorithmus auf einer realen Maschine (Rechner). Peter Sobe 5

Algorithmen als mathematische Funktionen (1) Ein Algorithmus kann als Funktion (mathematische Definition) aufgefasst werden. y=f(x) oder f: D Z, x y (D: Definitionsmenge, Z: Zielmenge) In der Mathematik ist eine Funktion oder Abbildung eine Beziehung zwischen zwei Mengen, die jedem Element der einen Menge (Funktionsargument, unabhängige Variable, x-wert) genau ein Element der anderen Menge (Funktionswert, abhängige Variable, y-wert) zuordnet. (Quelle: de.wikipedia.org) Interpretation: Elemente aus Mengen: Eingabe und Ausgabe Die Elemente können auch Mengen sein Peter Sobe 6

Algorithmen als mathematische Funktionen (2) Somit wird einer Funktion ein Algorithmus zugeordnet. Es gibt aber Funktionen, denen kein Algorithmus zugeordnet werden kann. Diese Funktionen sind damit nicht berechenbar. Definition: Eine Funktion f heißt berechenbar, wenn es einen Algorithmus gibt, der für jedes Argument x den Funktionswert f(x) berechnet. Beispiele folgen Peter Sobe 7

Beispiele berechenbarer und nicht berechenbarer Funktionen (1) a) Berechne alle Primzahlen im Intervall [1,100]! Dieses Beispiel stellt eine berechenbare Funktion dar, der Algorithmus ist relativ einfach. b) Berechne die Funktionswerte der Funktion f(x+1) = 2 f(x) mit f(0)=0 für 6<=x<=12! Dies ist auch eine berechenbare Funktion, die sich aber auf keiner realen Rechenmaschine abarbeiten lässt, da f(6) bereits eine Zahl mit 19000 Dezimalstellen ist. c) Drucke alle ganzen Zahlen von 1 bis 10 100! Dieses Beispiel ist berechenbar, aber nicht in angemessener Zeit auf einem realen Rechner ausführbar! Peter Sobe 8

Beispiele berechenbarer und nicht berechenbarer Funktionen (2) Fortsetzung: d) Berechne alle reellen Zahlen im Intervall [0,1] Dieses Beispiel ist eine nicht-berechenbare Funktion dar. Es kann bewiesen werden, dass solch ein Algorithmus nicht existieren kann. Schlussfolgerungen: Einige Funktionen sind prinzipiell nicht berechenbar. Manche Funktionen sind unter realistischem Ressourcen- und Zeitaufwand nicht auf einem Rechner umsetzbar, obwohl sie prinzipiell berechenbar sind. Es ist zweckmäßig, an Algorithmen solche Forderungen zu stellen, dass sie auf realen Maschinen praktisch ausgeführt werden können. Im folgenden werden diese wichtigen Eigenschaften aufgeführt. Peter Sobe 9

Charakteristische Eigenschaften von Algorithmen Endlichkeit Ein Algorithmus muss aus einer endlichen Anzahl von Lösungsschritten bestehen und nach Abarbeitung dieser endlich vielen Schritte nach einer endlichen Zeit das Ende erreichen. Eindeutigkeit Die einzelnen Schritte eines Algorithmus und ihre Aufeinanderfolge müssen eindeutig beschrieben sein. Allgemeinheit Ein Algorithmus darf nicht nur die Lösung einer speziellen Aufgabe (z.b. Lösung der Gleichung x² + 2x + 1=0), sondern muss die Lösung einer Klasse von Problemen (z.b. die Lösung aller quadratischen Gleichungen ax² +bx +c =0) beschreiben. Determiniertheit Die mehrmalige Anwendung des Algorithmus mit denselben Eingangsdaten muss immer wieder dieselben Ausgangsdaten liefern. Peter Sobe 10

Charakteristische Eigenschaften von Algorithmen Effizienz Ein Algorithmus muss möglichst wenig Ressourcen einer Maschine, d.h. möglichst wenig Rechenzeit und möglichst wenig Speicher in Anspruch nehmen. In der Informatik wurden Effizienzmaße für Algorithmen, die sogenannte Zeit- und Speicherkomplexität entwickelt, mit der Algorithmen bewertet werden können. Dies ist praktisch sehr wichtig, da zur Berechnung einer Funktion oft mehrere Algorithmen angegeben werden können. Peter Sobe 11