我想运行此行但不幸的是它会抛出错误。有什么想法吗?
未定义的函数或变量
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);
答案 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)。