4.3 Spezifikation - Algorithmus - Implementierung

Algorithmus
Spezifikation
Implementierung
(Der Begriff)
Algorithmus ist ein Problemlösungsverfahren. Genauer besehen ist es ein Problemlösungsrezept mit den folgenden Eigenschaften:
  • Das Verfahren besteht aus einzelnen Schritten (Aktionen).
  • Jede Aktion bewirkt eine Änderung von Objekten und bestimmt, welche Aktionen als nächstes ausgeführt werden sollen.    
  • Jede Aktion muss von dem gegebenen Prozessor eindeutig interpretierbar sein (Maschine oder Lebewesen).
  • Jede Aktion muss durch den Prozessor in endlicher Zeit ausführbar sein.
  • Der Algorithmus muss mit endlich langem Text formulierbar sein. (Allerdings muss nicht jeder Algorithmus nach endlicher Zeit anhalten. Z. B. sollte der Algorithmus für eine Ampelsteuerung möglichst nicht aussetzen.)
  • Der Algorithmus kann mit Eingangsobjekten, Ausgangsobjekten und Hilfsobjekten arbeiten (muss aber nicht).

Kurz:

Ein Algorithmus ist eine Beschreibung, um ein Problem zu lösen. Diese Beschreibung ist

  1. eindeutig 
  2. ausführbar und
  3. terminiert

Achtung: Die Beschreibung selbst muss terminiert sein, nicht jedoch die Ausführung, diese kann i. P. ewig dauern,  wie das oben erwähnte Beispiel der Ampelsteuerung zeigt.

 

Spezifikation - Algorithmus - Implementierung Neben dem Begriff des Algorithmus taucht häufig noch die Begriffe Spezifikation und Implementierung auf, Ihr Zusammenspiel lässt sich am Beispiel des  Programmieren am besten verdeutlichen. So beschreibt die Spezifikation, was gelöst werden soll. Der Algorithmus, wie ein Problem gelöst wird. Die Implementierung schließlich ist die Realisierung des Algorithmus in einer konkreten Computersprache wie z.B. Pascal, C++, Delphi oder Java.

An einem Beispiel sollen Spezifikation und Algorithmus verdeutlicht werden

ein weiteres Beispiel
Reifenwechsel
Spezifikation:   Ersetze ein Rad durch ein Reserverad. Schreiben Sie einen Algorithmus, der die Spezifikation erfüllt.

Algorithmus:

Packe Werkzeug und Reserverad aus.
Entferne Radkappe.
Wiederhole solange solange noch eine Mutter fest {
    Lockere feste Mutter
}
Setze Wagenheber an.
Hebe Wagen mit Heber an.
Wiederhole solange noch eine Mutter nicht entfernt ist {
    Schraube Mutter ab
}
Nimm Rad ab.
Setze Reserverad an.
Wiederhole solange noch eine Mutter nicht befestigt ist {
    Schraube Mutter auf freien Bolzen
}
Setze Radkappe auf
Entferne Wagenheber.
fertig!
 
Weitere Beispiele...
  • Anbaggern
  • Löse Gleichungssystem
  • Vereinbare Gesprächstermin
  • Starte ein Auto
  • Koche Mittagessen

"Programmieren" ist so alt wie Unterweisung und Nachahmung.

zu 4.4 Der älteste Algorithmus: Der Faden der Ariadne
zur Startseite www.pohlig.de  (C) MPohlig 2002