Frage:
Funktion oder Algorithmus?
Icefox
2011-07-04 14:16:15 UTC
Wenn ich eine "Funktion" am PC programmiere,
die jedem x- Wert eindeutig ein y Wert zuordnet aber dabei Operatoren verwende,
die in der normalen Mathematik nicht geläufig sind
(z.B streiche die letzten 4 Ziffern weg, multipliziere mit deren Spiegelzahl,...)
ist das dann immer noch eine Funktion oder spricht man eher vom einen Algorithmus?
Vier antworten:
Robert
2011-07-05 16:20:41 UTC
In der Programmiersprache Delphi (eine Weiterentwicklung von Pascal) gibt es die Bezeichnungen "function" und "procedure" (auf deutsch Funktion und Prozedur).





Die Prozedure führt die angegebenen Befehle aus ohne einen Rückgabewert zu ermitteln.

Ein Beispiel: procedure KartenMischen( var Spiel: Word)



Durch die Variable "Spiel" kann z.B. definiert werden welche und wieviele Karten sich in dem Stapel befinden, der dann gemischt wird (52 kann für ein Poker-Blatt stehen).





Die Funktion führt die angegeben Befehle aus und gibt einen Rückgabewert zurück.

Ein Beispiel: function BlattWert( var Spieler: Word) = var: Integer



Die Variable "Spieler" gibt an von welchem Spieler die Karten bewertet werden sollen.

Durch die interne Variable "Result" wird ein Wert zurückgegeben. Z.B kann ein Rückgabewert einen Wert von "114" haben der für ein Paar (100) und dem Wert des Paares angibt (14 für Ass, 13 für König)



Hier der Aufruf der Befehle:

Prozedur: KartenMischen(52)

Funktion: Wert := BlattWert(a)

Bei der Funktion wird das Ergibnis direkt in die Variable "Wert" geschrieben.
carla
2011-07-05 06:54:38 UTC
"Eine Funktion ist doch mathematisch so definiert, dass eine Zahl durch eine Rechenvorschrift eindeutig auf eine andere Zahl abgebildet wird" NEIN. (Es kann auch dieselbe Zahl sein.) Auch in den Bild-Bildungsregeln von Funktionen ("der Mathematik") können Abfragen vorkommen. Zum Funktions-begriff gehört nicht die Existenz einer Rechenvorschrift, es wird nur verlangt dass kein Urbild mehrere verschiedene Abbilder hat.



Der Begriff Algorithmus gehört nicht zur Funktion, sondern zur schrittweisen Lösung von Problemen. Es gibt auch Sortier-Algorithmen.
Lucius T Fowler
2011-07-04 21:21:06 UTC
Das ist und bleibt dann eine Funktion, die in den meisten mir geläufigen Programmiersprachen mit dem Schlüsselwort "function" codiert wird.



Sobald irgendwas wie "if... then", "while ... do" oder "repeat ... until" enthalten ist, kannst du vion einem Algorithmus reden



Eine Funktion ist doch mathematisch so definiert, dass eine Zahl durch eine Rechenvorschrift eindeutig auf eine andere Zahl abgebildet wird.
2011-07-04 21:18:25 UTC
Ist dann ein Algorithmus


Dieser Inhalt wurde ursprünglich auf Y! Answers veröffentlicht, einer Q&A-Website, die 2021 eingestellt wurde.
Loading...