How many times this for loop will execute

1 Ansicht (letzte 30 Tage)
Pramit Biswas
Pramit Biswas am 30 Apr. 2016
Beantwortet: Roger Stafford am 30 Apr. 2016
count =0;
for i=1:5
count = count +1;
if true
i=i+1;
end
end
I want to skip some loop value depending upon conditions, for demo, I used every next time it should skip. But this is not happening. This loop executes all the 5 times.
1. Why?
2. What to do to achieve this?
for the time being for skipping 1 step used this code:
count =0; f= false;
for i=1:5
if f
f = false;
continue;
end
count = count +1;
if true
f=true;
end
end
but this is really awkward and somehow -ve for MATLAB, didn't expect. %HeartBroken%

Antworten (1)

Roger Stafford
Roger Stafford am 30 Apr. 2016
As to the “why” the for-loop does not accept any changes you might make to its variable, in this case ‘i’, as it repeats. So even though you changed 'i' internally it will keep on steadily using its own count for 'i'. It you want to skip out of the loop ahead of its prescribed sequence, use the ‘break’ command.

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by