首先,我对MATLAB很陌生,所以我不知道如何创建多个并发条件来执行while循环。对于I=1,我有a1(I(x+a2(I(y≤b(I(。,16,当该语句为true时,它将执行,例如x=x+1。我试着为这个想法编码:
while (for i=i:16
a1(i)*x + a2(i)*y < b(i);
end)
x=x+1;
end
当然,那个代码是错误的,我只想把整个for循环作为while循环的条件。那么,我如何修复我的代码才能做到这一点呢?非常感谢。
您想要使用all
或any
,这取决于您想要的输出
while any( a1 * x + a2 * y < b )
x = x + 1;
end
% or
while all( a1 * x + a2 * y < b )
x = x + 1;
end
阅读矢量化,了解为什么在MATLAB 中通常可以避免循环