MATLAB使用function构造函数和两种函数调用方式
的有关信息介绍如下:
本文介绍了function构造函数的方法,同时介绍了直接调用法和feval调用法两种方式调用MATLAB函数。其中feval调用法又分为feval(@函数名)和feval('函数名')两种调用方式。
第一,使用function构造求一元二次方程解的函数。点击“新建”-->“函数”,新建一个.m的函数文件。
第二,输入以下代码,构造一个名为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
第三,保存上述qiujie函数。需要注意的是,m函数文件的名字与function函数名字要一致,即保存为qiujie.m的函数。然后在命令窗口调用该函数,先用直接调用法调用该函数,就像调用MATLAB其他函数一样。如下图,以求x^2+2x+1=0的解为例。
第四,直接调用法调用函数,也可以按照[输出参数]=函数[输入参数]的方式调用函数。还是以求x^2+2x+1=0为例,如下图,可以看出方程的解输出到了自己给定的输出参数中。
第五,除了直接调用法,还可以用feval调用法,以求x^2-5x+6=0的解为例,在命令窗口输入下图代码得到方程的解。
第六,feval调用法除了上述利用函数句柄的方式调用之外,还可以直接输入函数名来调用,如下图。



