主要内容

函数

声明函数名、输入和输出

描述

例子

函数(y1,……yN) = myfun (x1,…, xM)声明一个函数命名myfun接受输入x1,…, xM并返回输出…,yN日元。这说明语句必须是第一个可执行的函数。有效的函数名以英文字母开始,可以包含字母、数字或下划线。

你可以保存功能:

  • 在一个函数文件,其中只包含函数定义。文件的名称必须匹配第一个函数在文件的名称。

  • 在一个脚本文件包含命令和函数定义。函数必须在文件的末尾。脚本文件不能具有相同的名称作为文件中的函数。在脚本函数支持R2016b或万博1manbetx更高版本。

文件可以包括多个本地函数或嵌套函数。为了可读性,使用结束字来表示每个函数在文件的结束。的结束关键字时需要:

  • 任何函数文件中包含一个嵌套的函数。

  • 函数是一个本地函数在函数文件,和任何本地函数文件中使用结束关键字。

  • 函数是当地的一个函数在一个脚本文件。

例子

全部折叠

定义一个函数在文件命名average.m接受一个输入向量,计算平均的值,并返回一个结果。

函数大街(x) =平均ave = (x(:))之和/元素个数(x);结束

从命令行调用的函数。

z = 1:9 9;ave =平均(z)
ave = 50

定义一个函数在文件命名stat.m返回一个输入向量的平均值和标准偏差。

函数[m s] =统计(x) n =长度(x);m = (x) / n;s =√总和(x m)。^ 2 / n));结束

从命令行调用的函数。

值= (12.7,45.4,98.9,26.6,53.1);(ave,方差)=统计(值)
ave方差= 29.4124 = 47.3400

定义一个脚本文件中命名integrationScript.m被积函数的计算值2 \π/ 3美元和计算曲线下的面积从0到\π美元。包括当地的一个函数,定义了被积函数,$ y = \ sin (x) ^ 3美元

注意:包括函数在脚本中需要MATLAB®R2016b或更高版本。

%计算被积函数的值在2 *π/ 3。x = 2 *π/ 3;y = myIntegrand (x)%计算曲线下的面积从0到π。xmin = 0;xmax =π;f = @myIntegrand;=积分(f xmin xmax)函数y = myIntegrand (x) y = sin (x)。^ 3;结束
y = 0.6495 = 1.3333

定义两个函数在文件命名stat2.m第一个函数调用第二个。

函数[m s] = stat2 (x) n =长度(x);m = avg (x, n);s =√总和(x m)。^ 2 / n));结束函数m = avg (x, n) m = (x) / n;结束

函数avg是一个本地函数。本地函数只适用于其他函数在同一个文件中。

调用函数stat2从命令行。

值= (12.7,45.4,98.9,26.6,53.1);(ave,方差)= stat2(值)
ave方差= 29.4124 = 47.3400

定义一个函数,它限制了输入不包含一个数字向量元素。这个函数使用参数关键字,这对MATLAB是有效的®R2019b后来版本。

函数[m s] = stat3 (x)参数x(:1){mustBeNumeric, mustBeFinite}结束n =长度(x);m = avg (x, n);s =√总和(x m)。^ 2 / n));结束函数m = avg (x, n) m = (x) / n;结束

参数代码块,(:1)表明x必须是一个向量。验证功能,{mustBeNumeric, mustBeFinite},限制元素x数值不。有关更多信息,请参见函数参数验证

调用函数与一个向量,它包含一个元素违反了输入参数声明。这违反导致抛出的一个错误mustBeFinite验证功能。

值= (12.7,45.4,98.9,NaN, 53.1);(ave,方差)= stat3(值)
在位置1无效的输入参数。值必须是有限的。

版本历史

之前介绍过的R2006a