all函数:当矩阵全为非零元素时返回1,否则(存在零元素),返回0;
any函数:当矩阵中存在非零元素时返回1,否则(全为零元素),返回0。
如果A是一个向量,所有的元素都是非零的,则返回1,如果有一个元素为零,则返回0
如果A是一个矩阵,则返回一个行向量,用于检测每一列是否全为非零元素,如果某一列中有一个元素为零,则返回0,如果某一列中全为非零元素,则返回1,由此构成一个行向量。
B = all(A, 1)返回一个行向量,可以认为all(A, 1)等价于all(A)
B = all(A, 2) 返回一个列向量,用于检测每一行是否全为非零元素。
实验:
>>
a=ones(4)
a =
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
>> all(a)
ans =
1
1
1
1
>>
all(all(a))
ans =
1
>> a(2,1)=0
a =
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
>> all(a)
ans =
0
1
1
1
>>
all(all(a))
ans =
0
技巧:all(all(a))可用于检测是否a全为非零元素
p
=
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
>>
any(any(p))
ans
=
0
>>
p(2,1)=1
p
=
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
>>
any(any(p))
ans
=
1
技巧:any(any(a))可用于检测a是否存在非零元素,反过来也可判断是否全为0,若返回0,则矩阵全为0元素。