Problem in using 'break' and 'while'
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I have problem in the while loop below. Looks like the break doesn't work, because sometimes R<=0.3 and s becomes one or bigger. What I need is that when R<=0.3 the loop should stop, and when R>0.3 a new x should be generated.
x= rand(); a=0; s=0;
while x>0.1
R=rand();
if R<= 0.3
a=a+1;
break
else
s=s+1;
x=rand();
end
end
Thanks,
0 comentarios
Respuestas (1)
Matt Fig
el 5 de Oct. de 2012
Editada: Matt Fig
el 5 de Oct. de 2012
This will prove to you that the break statement does work:
x= rand();
a=0;
s=0;
while 1 % Infinite loop? If break doesn't work then yes!
R=rand();
if R<= 0.3
a=a+1;
break % The only way out of the loop...
else
s=s+1;
x=rand();
end
end
When I run this, I always get a=1 (as expected), and s ranges form 0 to 6 on average. But the break statement is clearly working...
4 comentarios
Image Analyst
el 5 de Oct. de 2012
You could also use true instead of 1 - maybe using true would have made it more understandable???
Ver también
Categorías
Más información sobre Loops and Conditional Statements en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!