我试图定义一个简单的函数,然后调用它:
function p=MyExp(N);
p=[ 1 ]; % 0th order polynomial.
for k=1:N
pk=1/(factorial(k));
p=[pk,1];
end
end
poly3=MyExp(3);
disp (poly3)
Run Code Online (Sandbox Code Playgroud)
MATLAB返回一条消息:错误:文件:matlab_labIII_3_I.m行:10列:1此语句不在任何函数内.(它遵循END,终止函数"MyExp"的定义.)
这个脚本适用于OCTAVE!
谢谢
小智 6
如果在Matlab脚本中使用函数,则应该在函数内部包含所有代码,其中可以有多个函数.类似产品(Octave和Scilab)没有这个限制.
只需最少的代码更改即可轻松实现:将非功能代码包装到函数中,然后调用它.主要功能应首先出现在脚本中.
function MyProgram()
poly3=MyExp(3);
disp (poly3)
end
function p=MyExp(N);
p=[ 1 ]; % 0th order polynomial.
for k=1:N
pk=1/(factorial(k));
p=[pk,1];
end
end
Run Code Online (Sandbox Code Playgroud)
此外,当您使用函数时,Matlab期望文件的名称与要调用的函数的名称相匹配.因此,应该命名文件MyProgram.m
(或者命名主函数).