Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

New to MATLAB?

while true vs. for i= 1:Inf

Asked by Michael Loder

Michael Loder (view profile)

on 13 Dec 2012

So I was recently posed with the question, what is the difference between a while true loop and a for i = 1:Inf loop. I have done quite a bit of research, but I cannot seem to come up with an answer. Do you know?

0 Comments

Michael Loder

Michael Loder (view profile)

Products

No products are associated with this question.

3 Answers

Answer by per isakson

per isakson (view profile)

on 13 Dec 2012

The for-loop provide the loop-variable, ii. Why, is that interesting?

0 Comments

per isakson

per isakson (view profile)

Answer by James Tursa

James Tursa (view profile)

on 13 Dec 2012
Edited by James Tursa

James Tursa (view profile)

on 13 Dec 2012

In addition to what Per Isakson has written, I would add that the loop variable, after a certain point, will lose precision and become ill-defined. I think MATLAB will try to gracefully provide a value for ii, but after a point the successive ii's will be equal to each other until the background rounding scheme clocks it over into the next representable value. (As I recall, there was a previous similar thread some time ago that explored this topic)

2 Comments

Matt Fig

Matt Fig (view profile)

on 14 Dec 2012
Warning: Warning: FOR loop index is too large. Truncating to 281474976710655
bym

bym (view profile)

on 14 Dec 2012

There is also a MISRA-C rule regarding a while true vs a for loop in C, but I do not know if that extends to Matlab

James Tursa

James Tursa (view profile)

Answer by Azzi Abdelmalek

Azzi Abdelmalek (view profile)

on 13 Dec 2012
 k=0; 
while rand<0.8
  k=k+1;
end

The while loop will run until a condition rand < 0.8 is false, we don't know when it occurs, because rand is a random number. In this case we can't use a for loop

0 Comments

Azzi Abdelmalek

Azzi Abdelmalek (view profile)

Contact us