16.09.2017 Aufrufe

Vorkurs Informatik

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

5<br />

Funktionen<br />

Dieses Kapitel erweitert die uns bisher bekannten Möglichkeiten des Algorithmenentwurfs und<br />

der Programmierung um ein weiteres Konzept: die Funktionen. Wir demonstrieren zunächst die<br />

Nützlichkeit von Funktionen an Algorithmen zum Sortieren einer endlichen Menge von Zahlen.<br />

Bei den Algorithmen handelt es sich um Varianten der Idee des Sortierens durch Minimumsuche,<br />

die in den Abschnitten 5.1, 5.1.1 und 5.1.2 vorgestellt werden. Abschnitt 5.2 beschreibt das<br />

Konzept der statischen Methoden von Java, die in dieser Programmiersprache die Rolle von<br />

Funktionen übernehmen.<br />

Die Deklaration von Funktionen, die auch als Unterprogramme verstanden werden können, wirft<br />

die Frage nach der Abhängigkeit des Ortes der Verwendbarkeit von Elementen eines Programms<br />

auf. Beispielsweise ist in diesem Zusammenhang der Ort einer Variablendeklaration von Interesse.<br />

Dies führt zum Begriff des Gültigkeitsbereichs von Deklarationen, der Gegenstand von<br />

Abschnitt 5.3 ist.<br />

5.1 Beispiel: Sortieren einer Menge von Zahlen durch<br />

Minimumsuche<br />

Ein häufig auftretendes Problem in Rechneranwendungen ist das Sortieren. Das Sortierproblem<br />

lässt sich in einfacher Weise wie folgt definieren:<br />

Problem: Sortieren einer Zahlenfolge<br />

Gegeben: Eine Zahlenfolge a 0 ,a 1 ,...,a n−1 .<br />

Gesucht: Eine Anordnung der Eingabewerte nach steigendem Wert.<br />

Eine Anordnung nach steigendem Wert bedeutet, dass a i ≤ a i+1 ist, d. h. auch gleiche Zahlen sind<br />

möglich. Unsere Beispielfolge 11,7,8,3,15,13,9,19,18,10,4 sieht nach Sortierung wie folgt<br />

aus: 3,4,7,8,9,10,11,13,15,18,19.<br />

5.1.1 Sortieren durch Minimumsuche mit Hilfsfolge<br />

Eine mögliche Lösung für das Sortierproblem beruht auf dem bekannten Algorithmus zur Minimumsuche<br />

(vgl. Abschnitt 3.1, Seite 23).<br />

H. Müller, F. Weichert, <strong>Vorkurs</strong> <strong>Informatik</strong>,<br />

DOI 10.1007/978-3-8348-2629-9_5, © Springer Fachmedien Wiesbaden 2013

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!