Frage von yoloo99, 81

Was ist der Unterschied zwischen Algorithmus, Sequenz und Kontrollstruktur?

Ich freue mich über alle Antworten! ^^ Vielen Dank schonmal im Voraus!

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von spaghetticode, 78

Ein Algorithmus ist eine Rechenvorschrift: "Was ist in welchen Schritten zu tun, um zu einer bestimmten Lösung zu kommen?"

Eine Sequenz ist eine Kette von Daten oder Operationen, die man der Reihe nach durchläuft.

Eine Kontrollstruktur ist eine Kombination aus Operationen und Bedingungen, die den Programmfluss steuert: "Gilt A? Dann führe diesen Codeteil aus. Gilt B? Dann führe jenen aus." oder auch: "Führe diesen Codeteil wiederholt aus, solange A gilt."

Kommentar von yoloo99 ,

Könnte man behaupten das man für Algorithmen keine Kontrollstrukturen sondern nur Sequenzen gebrauchen könnte?

Kommentar von spaghetticode ,

Nein. Es gibt sicherlich Algorithmen, die ganz ohne Kontrollstrukturen auskommen. Aber sobald ein Algorithmus auch nur gerade so komplex wird, dass er eine wirklich sinnvolle Aufgabe löst, kann er ohne Kontrollstrukturen nicht mehr formuliert werden.

In dieser Allgemeinheit, in der du es formulierst, ist es also sicher falsch.

Antwort
von Omnivore08, 53

Ein Algorithmus ist eine Folge von Befehlen für ein bestimmtes Problem. Algorithmen funktionieren immer gleich: Gibt man also immer die gleichen Parameter dem Algorithmus, dann kommt am Ende auch immer das selbe raus.

Sequenz ist eine Folge von Operationen.

Kontrollstrukturen sind Konstrukte, die dein Kode verzeigen (if) oder in einer Schleife (while/for) begeben.

Kommentar von yoloo99 ,

Könnte man behaupten das man für Algorithmen keine Kontrollstrukturen sondern nur Sequenzen gebrauchen könnte?

Kommentar von Omnivore08 ,

Ja na sicher. Wenn es bestimmte Operationen erfolgen, die strikt nach einem Muster gehen, dann braucht man dafür dich unbedingt eine Kontrollstruktur.

keine Ahnung....sagen wir mal du willst zu einem Ton bieeeeeep (sagen wir mal 440Hz) Mittels Algorithmus den nächsten Ton wissen.

Dann wäre dein Algo so, dass du die übergebenden 440Hz mit der 12ten Wurzel aus 2 multiplizierst und diesen Faktor in 440 reinmultiplizierst. Das wäre also ein Algo aus 2 Befehlen + Rückgabe.

Dazu  betrachtet man aber natürlich die Wurzelfunktion als Befehl. Intern laufen da natürlich Schleifen ab, also kontrollstrukturen.

Keine passende Antwort gefunden?

Fragen Sie die Community