feirfei 发表于 2008-10-25 00:09

请教大家一个很简单的求和问题

问题是: 一共八个数,每个数都可能是 0,1,2中的一个,怎么计算这八个数中不是0的数的个数,比如这八个数是(0,1,2,2,2,1,2,1) 怎么计算不是零的个数呢呢。有个类似方法可以借鉴:假设这八个数 每个数只可能是1或2,那计算这八个数中是2的个数,可以用这种方法sum2=[(a1+a2+a3+a4+a5+a6+a7+a8)-8], 即可求出这八个数中是2的个数来,用这种方法算上面那个怎么算呢 , 谢谢大家了,用式子表示或用matlab 计算,谢谢大家了

friendchj 发表于 2008-10-25 00:35

用find函数先找出零的个数,再用8减即可。
例如:8-max(size(find(a==0)))

sogooda 发表于 2008-10-25 09:03


aaa=;
numel(find(aaa))

ans =

   7

feirfei 发表于 2008-10-25 21:41

回复 沙发 friendchj 的帖子

多谢了非常感谢
页: [1]
查看完整版本: 请教大家一个很简单的求和问题