# How to stop a loop when the wrong values are entered

1 view (last 30 days)
Jonathan Hall on 22 Mar 2016
Commented: Jonathan Hall on 22 Mar 2016
Hey everyone,
Fairly new to Matlab and I'm having some troubles with looping. For my assignment I need to create a program that will end if an unacceptable value is added (i.e. a negative number or an angle outside of the given range.) I also need it to display a message stating that a wrong value was added. Here's what I have:
H=input('Enter a value greater than 0 for height in feet ');%Height in ft
L=input('Enter a value greater than 0 for length in feet ');%Length in ft
W=input('Enter a positive value for work in pounds force ');%Work in lbf
aW=input('Enter the angle of alpha W between 0 and 360 degrees ');%Alpha W in degrees
while true
if H<0 || L<0
break
end
if aW<0 || aW>360
break
end
end
Wx=W*cosd(aW) Wy=W*sind(aW)
The book I'm using isn't too clear on how to use loops but I think I need to use the while loop. No matter what values I enter, I can't get a message to display (I know that I don't have one in this program, I deleted it because it didn't work) and instead of stopping it will end the loop and proceed to calculate Wx and Wy. Any help would be greatly appreciated! If I left anything out let me know. Thanks!
-Jon
##### 3 CommentsShow 1 older commentHide 1 older comment
Jonathan Hall on 22 Mar 2016
I had an if statement after the loop, but that didn't do what I needed to be done
Image Analyst on 22 Mar 2016
Very simple solution. Step through it with the debugger.

Rick Rosson on 22 Mar 2016
Edited: Rick Rosson on 22 Mar 2016
% Height in feet:
H = 0;
while H <= 0
H = input('Enter a value greater than 0 for height in feet ');
end
Jonathan Hall on 22 Mar 2016
Fantastic! That helps a lot. Of course it's something so simple haha. Thank you very much!