using less than operator and combination of if and for statement

6 views (last 30 days)
I'm trying to use the less than operator and getting the following error (for vertical Height 102 Error: Invalid operator use). also Is the for and if statement combination I'm using correct?
%calculate Rim to disc ratio
shortestRimLength=minDistance;
DiameterOfDisc=verticalHeight
%Rim to disk ratio estimation
RDR=shortestRimLength./DiameterOfDisc;
for DiameterOfDisc<102
if RDR>0.4
disp('NORMAL')
msgbox('NORMAL')
elseif RDR <0.2 && RDR>=0.4
disp('EARLY GLAUCOMA ')
msgbox('EARLY GLAUCOMA ')
else RDR<=0.2;
disp(' ADVANCED GLAUCOMA ')
msgbox(' ADVANCED GLAUCOMA ')
end

Accepted Answer

Walter Roberson
Walter Roberson on 3 Dec 2022
You cannot use a condition in for : if you need to use a condition you should be using while
Note that when you use while, at least one of the variables involved in the test needs to be changing inside the loop, or else you will end up with an infinite loop (unless you do have something changing and you use break)
Your RDR is not changing inside the loop, so if you entered the loop at all, you would never exit the loop.
I have to wonder if what you want is instead
if DiameterOfDisc < 102
rather than a loop at that point.

More Answers (1)

Fifteen12
Fifteen12 on 3 Dec 2022
Your for loop is using a conditional as its input. In MATLAB you need to specify a list.
Try:
for DiameterOfDisc = 1:102

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!