how to run a for loop for a varying no. of times in matlab?

2 次查看(过去 30 天)
Hi everyone. I need your help again. Is there any way to run a for loop for suppose k no. of times where the value of k is changing with each iteration of the loop??
Suppose the program is:
n=7; %fixed
k=0;
for i=1:n+k
statements;
statements;
if(condition is true)
k=k+1;
end
end
The loop is being executed for n times even if condition is true and k gets incremented. But I want the loop to run for n+k no. of times. Is it possible? Is there any workaround?? Please help! Thanx in advance!!

采纳的回答

Amit
Amit 2014-1-19
You can use while loop something like this:
n=7; %fixed
k=0;
val_flag = 0;
while (val_flag < n+k)
statements;
statements;
if(condition is true)
k=k+1;
val_flag = val_flag + 1;
end
end
  4 个评论
roro6992
roro6992 2014-1-19
编辑:roro6992 2014-1-19
Sry i hd to mention. I have one nested for loop inside the while loop too. But its index doesnt need to be changed its fixed. I bother about the first for loop...or while loop as he suggested.
Amit
Amit 2014-1-19
haha .. I am just worried that the inside k = k+1 will go to a long long time. I hope you have some condition where you stop growing k.
And, please post the whole code, so that people can see. One will only answer what you ask. We can't know the twists and turns in the story.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by