How to create for and if loops instead of while
1 回表示 (過去 30 日間)
古いコメントを表示
Hi all,
I am quit new to matlab and wondering if possible to write for with if loop instead of while: (as It is required to link that file to another programme that does not read while.
So here is the matlab code example:
x = 1;
st = 0;
y = 1;
z = 1;
while y <= 20
switch (st)
case 1
display('CASE ONE')
st = 2;
case 2
while display('CASE TWO')
end
st = 3;
otherwise
display('OTHERS')
end
end
Hope anyone can help and guide me how to write the same example but without while loop
2 件のコメント
Image Analyst
2022 年 10 月 21 日
編集済み: Image Analyst
2022 年 10 月 21 日
That's an infinite loop because you never change y within the loop. You need to change y or else the loop will never exit. What is your equation for how y changes?
Invest 2 hours here:
Jan
2022 年 10 月 21 日
Note, that "if loop" is not a meaningful expression.
The current code displays 'OTHERS' in an infinite loop. What is the intention to modify the code?
採用された回答
Jan
2022 年 10 月 21 日
WHILE and FOR loops are equivalent:
k = 1;
while k <= 100
...
k = k + 1;
end
and
for k = 1:100
...
end
4 件のコメント
Image Analyst
2022 年 10 月 21 日
@Mark Sc in a for loop or while loop you test some condition and then call break to immediately leave the loop.
for k = 1 : 10000
if iWantToExitLoop
break; % Bail out of for loop completely. Also works with while loops.
end
end
Not sure what condition you want to check to bail out, but that's basically it.