繁体   English   中英

如何在 MATLAB 中编写 for 循环作为 while 循环的条件?

[英]How to write a for loop as a condition of a while loop in MATLAB?

首先,我对 MATLAB 真的很陌生,所以我不确定如何为执行 while 循环创建多个并发条件。 我有 a1(i)x + a2(i)y ≤ b(i) for i = 1, . . ., 16 当这条语句为真时,就会执行,例如x=x+1。 我试图为这个想法编码:

while (for i=i:16
      a1(i)*x + a2(i)*y < b(i);
       end)
   x=x+1;
end

但是当然,那个代码是错误的,我只是想把整个 for 循环作为 while 循环的条件。 那么我该如何修复我的代码来做到这一点呢? 谢谢!

您想使用allany ,具体取决于您想要的输出

while any( a1 * x + a2 * y < b )
    x = x + 1;
end

% or

while all( a1 * x + a2 * y < b )
    x = x + 1;
end

阅读矢量化以了解为什么通常可以避免 MATLAB 中的循环

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM