簡體   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