and if in matlab?

1 回表示 (過去 30 日間)
darksideofthemoon101
darksideofthemoon101 2011 年 4 月 8 日
Hi,
I want to run an if loop with 2 conditions, but I can't see an "and-if" equivalent.
Eg:
if 0<x<1
*and y2<y1*
z=y2;
else
end
What operator can I use instead of and?
Thanks,
Richard
  1 件のコメント
Walter Roberson
Walter Roberson 2011 年 12 月 8 日
There is no such thing as an if loop.

サインインしてコメントする。

採用された回答

Sean de Wolski
Sean de Wolski 2011 年 4 月 8 日
&
&&
and(x,y)
doc and
  1 件のコメント
darksideofthemoon101
darksideofthemoon101 2011 年 4 月 8 日
Thanks Sean de, I just had a total blindspot there for some reason!

サインインしてコメントする。

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2011 年 4 月 8 日
0<x<1 does not do what you want it to!! It is parsed as
(0<x)<1 . 0<x returns a boolean value, 0 or 1, and then that value is tested according to whether it is < 1 which is only the case if the operation was false. The code is thus equivalent to
~(0<x)
and so is the same as
isnan(x) || 0 >= x
I doubt that you would want 0<x<1 to be true when x is nan !!

カテゴリ

Help Center および File ExchangeCell Arrays についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by