很抱歉这个noob问题,但我是MATLAB的初学者。我需要做以下任务,但我被困住了。 “写一个带有三个参数x,a,b的函数,其中x是一个矩阵,a和b是标量。该函数返回x中位于区间[a,b]中的元素数。”这是我到目前为止所拥有的。
function y = count(x,a,b);
for value=a:b
length(value)
end
我需要使用以下行在命令提示符中调用该函数:
count(randn(20, 20), 0, 5)
然而,我没有得到任何接近正确答案的东西。谁能指出我正确的方向?谢谢。
答案 0 :(得分:3)
由于Jonas建议nnz
和sum
的选项比numel(find(...))
快,sum
最快,因此:
function y = count(x,a,b);
y = sum(x(:)>a & x(:)<b);