Funktionen

Funktionen werden genauso erstellt wie ein Skript. Allerdings ist eine Variable einer Funktion nicht mehr global definiert, dies muss explizit geschehen, in dem man sie der Funktion als Argument übergibt.
Nach dem Rechenvorgang gibt die Funktion dann zu diesem Argument einen oder mehrere Funktionswerte aus.

Eine Funktion hat die folgende Struktur:

Funktionsname.m

function Ausgabeliste = Funktionsname(Argumentenliste)
% Kommentare
Anweisungen
Ausgabeliste = …;
end

Wichtig: Der Funktionsname und der Name der Datei müssen übereinstimmen!

Die Ausgabeliste unterstützt die automatische Ausgabe der Ergebnisse, wenn sie in den Anweisungen explizit aufgeführt wird. Die Ausgabenliste kann in der Funktionsdefinition auch weggelassen werden. Eine Ausgabe der Ergebnisse muss in diesem Fall in den Anweisungen definiert werden.

Skripte ohne Eingangswerte können wie Skripte gestartet werden. Besitzen sie einen Eingangswert, muss dieser beim Aufruf übergeben werden.

Als Beispiel dient hier eine Funktion, die eine quadratische Gleichung löst:

f.m

function y = f(x)

a = 3;
b = 2;
c = 1;

y = a*x^2+b*x+c;
end

Zu erkennen ist der Funktionsname (f), eine Reihe von Anweisungen (die Definition von a, b und c), sowie der Ausgabewert y.
Die Ausgabe erfolgt hier im Beispiel mit x = 5 wie folgt:

>> f(5)

ans =

86