matlab中 if all(D>0)和if all(D)>0有区别吗?都是什么意思
1个回答
展开全部
if all(D>0)和if all(D)>0 意思是不一样的。 if all(D>0):判断D中所有的元素是否都大于0,如都大于0,就返回1;如有一个不大于0,就返回0。
if all(D)>0 :先判断D中元素是否不为0,不为0的元素返回1,为0的元素返回0,再对返回的所有元素判断,是否都大于0,如有一个不大于0,就返回0,如都大于0,就返回1。如:
D = [0.53 0.67 0.01 0.38 0.07 0.42 0.69];a=all(D>0),b=all(D)>0
结果为:a =
logical
1
b =
logical
1
D = [-0.5 0.67 0.01 0.38 0.07 0.42 0.69];a=all(D>0),b=all(D)>0
结果为:a =
logical
0
b =
logical
1
D = [-0.5 0 0.01 0.38 0.07 0.42 0.69];a=all(D>0),b=all(D)>0
结果为:a =
logical
0
b =
logical
0
if all(D)>0 :先判断D中元素是否不为0,不为0的元素返回1,为0的元素返回0,再对返回的所有元素判断,是否都大于0,如有一个不大于0,就返回0,如都大于0,就返回1。如:
D = [0.53 0.67 0.01 0.38 0.07 0.42 0.69];a=all(D>0),b=all(D)>0
结果为:a =
logical
1
b =
logical
1
D = [-0.5 0.67 0.01 0.38 0.07 0.42 0.69];a=all(D>0),b=all(D)>0
结果为:a =
logical
0
b =
logical
1
D = [-0.5 0 0.01 0.38 0.07 0.42 0.69];a=all(D>0),b=all(D)>0
结果为:a =
logical
0
b =
logical
0
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询