matlab 中all和any函数

all函数:检矩阵中是否全为非零元素,如果是,则返回1,否则,返回0。

any函数:检测矩阵中是否有非零元素,如果有,则返回1,否则,返回0。用法和all一样
  1. 语法:
  2. B = all(A)
  3. B = all(A, dim)
复制代码
B = all(A):

如果A是一个向量,如果所有的元素都是非零的,则返回1,如果有一个元素为零,则返回0。

如果A是一个矩阵,则返回一个行向量,用于检测每一列是否全为非零元素,如果某一列中有一个元素为零,则返回0,如果某一列中全为非零元素,则返回1,由此构成一个行向量。

B = all(A, 1)

返回一个行向量,可以认为all(A, 1)等价于all(A)


B = all(A, 2)

返回一个列向量,用于检测每一行是否全为非零元素,如果某一行中有一个元素为零,则返回0,如果某一行中全为非零元素,则返回1,由此构成一个列向量。


例题:
  1. >> a=[1 2 3;0 2 0;0 4 0]

  2. a =

  3.     1     2     3
  4.     0     2     0
  5.     0     4     0

  6. >> all(a)

  7. ans =

  8.     0     1     0

  9. >> all(a,1)

  10. ans =

  11.     0     1     0

  12. >> all(a,2)

  13. ans =

  14.     1
  15.     0
  16.     0
复制代码
同样,我们可以利用all函数,进行矩阵中一定条件的编程。

格式如下:
  1. if all(A < 0.5)
  2. do something
  3. else
  4. do another thing
  5. end
复制代码
例题:
  1. >> a=[1 2 3 4 5 6 7 8 9]

  2. a =

  3.     1     2     3     4     5     6     7     8     9

  4. >> if all(a>4)
  5.        disp('OK');
  6. else
  7.        disp('Sorry');
  8. end

  9. 结果显示为Sorry
  10. >>if(any(a<6))%a中是否存在小于6的数

  11. disp('OK');

  12. else

  13. disp('Sorry');

  14. end

  15. OK
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值