Niggle with a ``simple'' if-else structure.

1 次查看(过去 30 天)
Hi.
I want to enforce the following structure in MATLAB -
if a>20
{Statement set 1}
elseif 10<a<20
{Statement set 2}
else
{Statement set 3}
end
`a' can take only positive values, from 1 to 30.
My syntax for `elseif' might be wrong, but atleast in this post it clarifies what I'm trying to do :
1) if a > 20, execute statement set 1.
2) if a lies between 10 and 20, execute statement set 2.
3) if a < 10, execute statement set 3.
The problem is, it executes statement set 2 even if a < 10, probably because 10<a<20 is not allowed as an elseif condition.
Is there any other way of enforcing this structure in MATLAB? Or, can someone please suggest a correct `elseif' condition for this purpose.
Thanks.

采纳的回答

David Sanchez
David Sanchez 2013-7-18
Instead of
elseif 10<a<20
do the following:
elseif ( (a>10) && (a<20) )
  2 个评论
David Sanchez
David Sanchez 2013-7-18
if you want a to be greater or equal to 10 and lessor equal to 20:
elseif ( (a>=10) && (a<=20) )

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by