我想在 Matlab 代码中的数组中找到一个值的多个元素。我找到了函数 mod 和 find,但它们返回元素的索引而不是元素。此外,我编写了以下代码:
x=[1 2 3 4];
if (mod(x,2)==0)
a=x;
end
但这不起作用。我怎么解决这个问题?
看起来你要找到 2 的所有倍数(或任何数字),你可以使用以下方法来实现:
a = x( mod(x,2) == 0 ) ;
做的时候a = x
,x
还是x=[1 2 3 4]
不管(mod(x,2)==0)
是真是假;您可以为 分配一个值(mod(x,2)==0)
,例如val = (mod(x,2)==0)
,然后将此值附加/添加到新数组。
给定一个向量numberList = [ 1, 2, 3, 4, 5, 6];
和一个数字,您可以使用找到数字的倍数的number = 2;
索引(向量中的位置)。numberList
indices = find(mod(numberList, number) ==0);
如有必要,您可以显示此倍数调用的列表:multiples = numberList(indices)
。
multiples =
2 4 6