首頁 > 軟體

MATLAB使用function建構函式和兩種函數呼叫方式

2019-12-24 18:18:09

本文介紹了function建構函式的方法,同時介紹了直接呼叫法和feval呼叫法兩種方式呼叫MATLAB函數。其中feval呼叫法又分為feval(@函數名)和feval('函數名')兩種呼叫方式。


1

第一,使用function構造求一元二次方程解的函數。點選「新建」-->「函數」,新建一個.m的函數檔案。


2

第二,輸入以下程式碼,構造一個名為qiujie的函數,用於求一元二次方程的解。

function [ delta,x1,x2 ] = qiujie( a,b,c )

% 求一元二次方程的解

% June 6th,2019

delta = b^2-4*a*c;

if delta == 0

    fprintf('方程只有一個解')

    x1 = -b/(2*a)

    x2 = -b/(2*a)

elseif delta > 0

    fprintf('方程有兩個解')

    x1 =(-b + sqrt(delta))/(2*a)

    x2 =(-b - sqrt(delta))/(2*a)

else

    fprintf('方程無解')

end


3

第三,儲存上述qiujie函數。需要注意的是,m函數檔案的名字與function函數名字要一致,即儲存為qiujie.m的函數。然後在命令視窗呼叫該函數,先用直接呼叫法呼叫該函數,就像呼叫MATLAB其他函數一樣。如下圖,以求x^2+2x+1=0的解為例。


4

第四,直接呼叫法呼叫函數,也可以按照[輸出引數]=函數[輸入引數]的方式呼叫函數。還是以求x^2+2x+1=0為例,如下圖,可以看出方程的解輸出到了自己給定的輸出引數中。


5

第五,除了直接呼叫法,還可以用feval呼叫法,以求x^2-5x+6=0的解為例,在命令視窗輸入下圖程式碼得到方程的解。


6

第六,feval呼叫法除了上述利用函數控制代碼的方式呼叫之外,還可以直接輸入函數名來呼叫,如下圖。



IT145.com E-mail:sddin#qq.com