如何在 MATLAB 中创建函数?
函数是用于执行特定任务的语句块。函数允许用户频繁地重用代码。 MATLAB 有几个预定义的函数 可以直接使用,例如sin()、fact()、cos()等。MATLAB 还允许用户定义自己的函数。
句法:
function output_params = function_name(iput_params)
% Statements
end
- 该函数以关键字函数开头。
- 函数的返回变量在output_params中定义
- 函数名指定函数的名称
- input_params是函数的输入参数
下面是一些描述如何在 MATLAB 中使用函数的示例:
示例 1:具有一个输出的函数
该函数计算输入向量的均值
Matlab
% Input vector
values = [12, 4, 8.9, 6, 3];
% function return mean of vector c
function m = stat(x)
n = length(x);
m = sum(x)/n;
end
mean = stat(values)
Matlab
% Input
x = 3;
y = 2;
% Function return p = nPr and c = nCr
function [p,c] = perm(n,r)
p = factorial(n)/factorial(n-r);
c = p*factorial(r);
end
[p,c] = perm(x,y)
Matlab
values = [12, 4, 8.9, 6, 3];
% Function returns standard deviation of vector x
function sd = stat2(x)
m = stat1(x);
n = length(x)
sd = sqrt(sum((x-m).^2/n));
end
% Function returns mean of vector x
function m = stat1(x)
n = length(x);
m = sum(x)/n;
end
stat2(values)
Matlab
% Plotting sin(x) function
function sin_plot()
x = linspace(0,2*pi,100);
y = sin(x);
plot(x,y);
end
sin_plot()
输出 :
mean = 6.7800
示例 2:具有多个输出的函数
该函数计算输入 n 和 r 的nCr和nPr 。
MATLAB
% Input
x = 3;
y = 2;
% Function return p = nPr and c = nCr
function [p,c] = perm(n,r)
p = factorial(n)/factorial(n-r);
c = p*factorial(r);
end
[p,c] = perm(x,y)
输出 :
p = 6
c = 12
示例 3:文件中的多个函数
- stat2()函数计算输入向量的标准偏差。
- stat1()计算输入向量的平均值。
MATLAB
values = [12, 4, 8.9, 6, 3];
% Function returns standard deviation of vector x
function sd = stat2(x)
m = stat1(x);
n = length(x)
sd = sqrt(sum((x-m).^2/n));
end
% Function returns mean of vector x
function m = stat1(x)
n = length(x);
m = sum(x)/n;
end
stat2(values)
输出 :
n = 5
ans = 3.2975
示例 4:没有 input_params 的函数
在这个程序中,我们将创建sin_plot()函数曲线罪()函数
MATLAB
% Plotting sin(x) function
function sin_plot()
x = linspace(0,2*pi,100);
y = sin(x);
plot(x,y);
end
sin_plot()
输出 :