变量未定义

时间:2016-07-10 11:30:30

标签: matlab loops variables

我想运行此行但不幸的是它会抛出错误。有什么想法吗?

  

未定义的函数或变量mr

     

游乐场出错(第23行)
  X = min(mr);

j = 1;

for i = 1:(resolution1+1)
    line(i) = m(a(1))*ab(i)+c;
end

for i = 1:(resolution1)
    if or(or(line(i)>ab_y(i) & line(i+1)<ab_y1(i+1),line(i)<ab_y1(i)& line(i+1)>ab_y1(i+1)),line(i)==ab_y1(i))
        mr(j) = ab1(i);
        rk(j) = ab_y1(j);
        j = j+1;
    end
end

X = min(mr);
Y = max(mr);

1 个答案:

答案 0 :(得分:0)

你的情况:

or(or(line(i)>ab_y(i) & line(i+1)<ab_y1(i+1),line(i)<ab_y1(i)& line(i+1)>ab_y1(i+1)),line(i)==ab_y1(i)) 

总是返回false,所以

中的语句
mr(j)=ab1(i); rk(j)=ab_y1(j); 

永远不会执行。因此变量mr不存在。

在循环之前添加一个mr = [];语句来初始化变量(并修改你的条件,为什么它总是返回false)。