Why are the inequality expressions not evaluated correctly?

1 回表示 (過去 30 日間)
ingstalam
ingstalam 2015 年 2 月 2 日
回答済み: Image Analyst 2015 年 2 月 2 日
My code is: grid is just a 5x6 matrix, so is visited.
neighbor=[3 4]
if((neighbor(1)>0) && (neighbor(1)<size(grid,1)+1) && (neighbor(2)>0) && (neighbor(2)<size(grid,2)+1) && (visited(neighbor(1),neighbor(2)==-1)))
Matlab gives the following error: Operands to the and && operators must be convertible to logical scalar values.
What's going wrong? I tried to debug step by step but could not figure out the mistake.

採用された回答

Image Analyst
Image Analyst 2015 年 2 月 2 日
Perhaps you meant:
if((neighbor(1)>0) && (neighbor(1)<size(grid,1)+1) && (neighbor(2)>0) && (neighbor(2)<size(grid,2)+1) && (visited(neighbor(1),neighbor(2))==-1))

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeJust for fun についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by