
matlab 中的函数参数个数,是你自己在函数中定义的啊,跟你函数里要调用的外部变量的个数相同。
例如:
主函数:
clc;clear;
sex = 0;
% a表示性别,1 表示男,0表示女
age = 11;
% b表示岁数
kid(sex,age);
函数kid:
function high = kid(a,b)
%计算10到15岁小孩身高
if(b>=10 && b<=15)
if (a == 1)
high = b01;
fprintf('the height of the boy is %13f m\n',high);
elseif (a == 0);
high = b0105;
fprintf('the height of the girl is %13f m\n',high);
else
fprintf('out of sex range\n');
end
else
fprintf('out of age range\n');
end
matlab自定义函数的有三种方法。
方法一:inline()匿名函数,例如
f= inline('sin(2pix + theta)', 'x', 'theta')
方法二:@()句柄函数,例如
f=@( theta,x)sin(2pix + theta)
方法三:function 文件,例如
function f = myfun(theta,x)
f=sin(2pix + theta);
新建一个m文件
在m文件里面第一行输入function
[x,y]=pll(x1,y1,x2,y2),这里x1
x2
y1
y2是你函数的输入值,
x
y是输出值,接着定义你要实现的功能,比如:x
=
x1
+
x2;
y
=
y1
+
y2;
接着保存这个m文件,注意!!
这个m文件的名字必须是定义的函数的名字,即保存为pllm
否则会出错。
接着在matlab命令窗口中输入
pll(1,2,3,4)看看会得到什么?
也可以另外创建一个m文件,在这里调用pll()这个函数。
不知道我说清楚了没。。。。我没有调试过,希望不会报错
-。-
Matlab中的程序有以下三种类型,现举例如下:
(1)f=@(x)x^2+x+1
(2)syms x;f=2x^3-x^2+1或syms x;f=inline('2x^3-x^2+1')
(3)建立M文件
function f=fun(x)
f=x^2-2x+1
对于你的问题,有多种解决方法,现举一例(是我认为最好的解决办法)
(1)建立M文件,在其中输入如下内容:
function f=fun(x,i)
%x,i均位向量。
f=zeros(length(i),length(x));%预分配变量空间
for k=1:length(i)
f(k,:)=x^i %相当于建立一个含有两个变量的函数。
end在调用时,如果你需要计算x=[1:10];i=1:2;时f的函数值。可以在MATLAB命令窗口中输入如下命令:
x=[1:5];i=1:2;f=fun(x,i)运行所得结果为:f=1 2 3 4 51 4 9 16 25
当然,此时,若只需求某一个数的某个次方也行。
Function函数是包含在Function和End Function语句之间的一组VBScript语句。 Function函数与Sub过程类似。但 Function函数可以有返回值。可以使用参数。
如果 Function函数没有任何参数,则 Function语句必须要包含空括号,Function函数通过函数名返回一个值。返回值的数据类型是Variant。
M函数除了直接用函数名调用之外,也可以进行参数传递,使得Matlab应用更加方便。
M函数文件以function开头,格式为:function 输出变量 = 函数名称(输入变量)
调用格式
C = cat(dim,A,B)
C = cat(dim,A1,A2,A3,A4,)
dim为1时,将矩阵上下拼接:[A;B],dim为2时,将矩阵左右拼接:[A,B],dim=3时则可以构造三维数组。
VAR_KEYWORD类型的参数通过前缀来声明(不是函数调用!声明和调用是两种不同的含义的)。如同语义,这种类型的参数只能通过关键字KEYWORD调用,但可以接收任意个关键字参数,甚至是0个参数,在函数内部以一个字典(dict)显示。VAR_KEYWORD类型的参数只允许有一个,只允许在函数的最后声名。
-Function函数
function y=chen(x,z)
y=xz;
将上述函数存为M文件,即可被同一目录下的其它程序调用
Matlab中的程序有以下三种类型,现举例如下:
(1)f=@(x)x^2+x+1
(2)syms x;f=2x^3-x^2+1
(3)建立M文件
function f=fun(x)
f=x^2-2x+1
含义
设D为一个非空的n 元有序数组的集合, f为某一确定的对应规则。若对于每一个有序数组 ( x1,x2,…,xn)∈D,通过对应规则f,都有唯一确定的实数y与之对应,则称对应规则f为定义在D上的n元函数。
记为y=f(x1,x2,…,xn) 其中 ( x1,x2,…,xn)∈D。 变量x1,x2,…,xn称为自变量,y称为因变量。当n=1时,为一元函数,记为y=f(x),x∈D,当n=2时,为二元函数,记为z=f(x,y),(x,y)∈D。二元及以上的函数统称为多元函数。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)