How to stop a loop when the wrong values are entered

1 visualizzazione (ultimi 30 giorni)
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
if aW<0 || aW>360
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!
  3 Commenti
Jonathan Hall
Jonathan Hall il 22 Mar 2016
I had an if statement after the loop, but that didn't do what I needed to be done
Image Analyst
Image Analyst il 22 Mar 2016
Very simple solution. Step through it with the debugger.

Accedi per commentare.

Risposta accettata

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

Accedi per commentare.

Più risposte (0)


Scopri di più su Loops and Conditional Statements in Help Center e File Exchange


Community Treasure Hunt

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

Start Hunting!

Translated by