Wie man eine Funktion in Octave erstellt

In dieser Lektion zeige ich Ihnen, wie Sie eine Funktion in Octave erstellen können.

Was ist eine Funktion? Es ist ein Stück Code, das bei Bedarf ausgeführt werden kann. Der Funktionscode ist separat vom Hauptprogramm. Er kann sich in derselben Datei oder in einer anderen Datei befinden. Funktionen sind in der Programmierung sehr wichtig. Sie machen den Code eines Programms präziser und kompakter.

Die allgemeine Syntax zur Definition einer Funktion ist wie folgt:

function [y1, y2, ... ] = namefunction([x1,x2,...])
code of the function
endfunction

  • Die Terme x1,x2... sind die Variablen (Eingabedaten), die die Funktion als Eingabe aus dem Funktionsaufruf erhält.
  • Die Terme y1,y2... sind die Variablen (Ausgabedaten), die die Funktion als Ausgabe zurückgibt.

Nachdem Sie eine Funktion definiert haben, können Sie die Funktion von verschiedenen Stellen im Programm aufrufen und ausführen.

Hier ist ein praktisches Beispiel.

Geben Sie ein Skript mit einer beliebigen Berechnungsoperation ein. Zum Beispiel mit 1;

1;

Hinweis. Wenn Sie das Skript mit function... beginnen, denkt der Octave-Interpreter, dass es sich um eine Funktionsdatei handelt und nicht um ein Skript.

Dann müssen Sie eine benannte Funktion "average()" erstellen, die zwei numerische Daten x1 und x2 als Eingabe erhält und den arithmetischen Durchschnitt y als Ausgabe zurückgibt.

1;

function y = average(x1,x2)
y = (x1+x2)/2;
endfunction

Fügen Sie nun im Programmcode einen Aufruf der average()-Funktion mit den beiden Eingabewerten 2 und 4 hinzu.

1;

function y = average(x1,x2)
y = (x1+x2)/2;
endfunction

m=average(2,4);
disp(m);

Die Funktion erhält die beiden Eingabewerte x1=2 und x2=4, berechnet den Durchschnitt y=(2+4)/2 und gibt das Ergebnis y=3 aus.

Daher ist die Ausgabe des Programms 3.

3

Fügen Sie nun einen zweiten Aufruf der Funktion mit zwei unterschiedlichen Zahlen hinzu.

Zum Beispiel 4 und 6.

1;

function y = average(x1,x2)
y = (x1+x2)/2;
endfunction

m=average(2,4);
disp(m);
m=average(4,6);
disp(m);

In diesem Fall ruft das Programm die average()-Funktion zweimal von zwei verschiedenen Stellen aus auf.

  1. Das erste Mal werden die Werte 2 und 4 übergeben und als Antwort wird 3 zurückgegeben.
  2. Das zweite Mal werden die Werte 4 und 6 übergeben und als Antwort wird 5 zurückgegeben.

Daher ist die Ausgabe des Programms:

3
5

Eine Funktion kann auch mehrere Werte als Ausgabe zurückgeben.

Zum Beispiel kann die Funktion [y1,y2] = hoch(x) einen numerischen Wert (x) als Eingabe erhalten und zwei Werte als Ausgabe erzeugen.

1;

function [y1, y2] = pwr(x)
y1=x^2;
y2=x^3;
endfunction

[y1,y2]=pwr(2);
disp(y1);
disp(y2);

Der Funktionsaufruf sendet x=2 als Eingabewert.

Die pwr() Funktion berechnet das Quadrat y1=4 und den Kubus y2=8 und gibt diese beiden Ergebnisse zurück.

4
8

Falls Sie das Ende der Funktion und die Rückgabe der Ergebnisse vorzeitig antizipieren möchten, können Sie die return-Anweisung verwenden.

Hier ist ein praktisches Beispiel.

1;

function [y1, y2] = pwr(x)
if x<0
y1=0
y2=0
return
endif
y1=x^2;
y2=x^3;
endfunction

[y1,y2]=pwr(-2);
disp(y1);
disp(y2);

Die return-Anweisung beendet die Ausführung der Funktion und gibt die Ergebnisse y1=0 und y2=0 zurück, wenn der Eingabewert negativ ist.

In diesem Fall ist die Ausgabe der Funktion

0
0

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Octave-Funktionen