Clear Filters
Clear Filters

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

1 view (last 30 days)
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!!

Accepted Answer

Amit
Amit on 19 Jan 2014
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 Comments
roro6992
roro6992 on 19 Jan 2014
Edited: roro6992 on 19 Jan 2014
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 on 19 Jan 2014
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.

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!