If statement with multiple variables, or if the variables can be shortened.

조회 수: 243(최근 30일)
x is a decimal number always smaller than one based on the users input.
So I want the program to check if the value of a,b,c or d is less than a certain value or greater than, and produce an output.

채택된 답변

Adam Danz
Adam Danz 2020년 10월 18일
편집: Adam Danz 2020년 10월 18일
if 0.6<=a && 0.6<=b && 0.6<=c && 0.6<=d && a<.10 && b<.10 && c<.10 && d<.10
dime = 1;
if all(0.6 < [a,b,c,d]) && all([a,b,c,d]<0.10)
dime = 1
Most important, this will never return a true value
all(0.6 < [a,b,c,d]) && all([a,b,c,d]<0.10)
If .6 is less than x, x will always be greater than 0.10.
You can brush up on Matlab indexing here

추가 답변(1개)

Asad (Mehrzad) Khoddam
Asad (Mehrzad) Khoddam 2020년 10월 18일
if x<1 && x<=0.75
a = x - 0.75;
elseif x>=0.5
b = x - 0.5;
elseif x>=2.5
c = x - 0.25;
d = x;
% make an array of values
v = [a, b, c , d];
if all(v>0.1) && all(v<=0.6)
dime = 1;


Find more on Operators and Elementary Operations in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by