當前位置:歷史故事大全網 - 範文作文 - 为什么matlab里面调用function以后结果不对啊请大家来帮忙~~谢谢~~

为什么matlab里面调用function以后结果不对啊请大家来帮忙~~谢谢~~

函数中用了全局变量中,在命令窗口中也必须先要定义其是全局变量。所以你在命令窗口中要这样输入

global v w p n;

x=;p=;n=4;

因此在函数中要少用最好不要用全局变量。可以写成下面的形式:

function f=fval( k,x,v,w,p,n)

如果 nargin==2

v=50;w=;p=;n=4;

< p>end;

if nargin==3

w=;p=;n=4;

end;

if nargin==4

p=;n=4;

end;

如果 nargin==5

n=4;

end;

temp1=0;

temp2=0;

对于 h=1:n

temp1=temp1+w(h)*x(h,k);

temp2=temp2+p(h)*x(h,k);

结束

temp1=temp1-v;

max=0;

if (0

max=temp1;

else

max=0;

end

f=temp2-k*100*max;

则在调用 时可以直接x=[1 1;0 1;1 0;0 0];fval(1,x)就可以了。

  • 上一篇:本人是PS菜鳥。新人。求photoshop合圖的全部教程。
  • 下一篇:C型包围圈的介绍
  • copyright 2024歷史故事大全網