Matlabコードの配列内の値の複数の要素を検索したい。 私は関数modとfindを見つけましたが、これらは要素のインデックスと、要素ではない のインデックスを返します。また、私は次のコードを書いた:Matlab:配列内の複数の要素を見つける
x=[1 2 3 4];
if (mod(x,2)==0)
a=x;
end
これは動作しません。どうすればこの問題を解決できますか?
Matlabコードの配列内の値の複数の要素を検索したい。 私は関数modとfindを見つけましたが、これらは要素のインデックスと、要素ではない のインデックスを返します。また、私は次のコードを書いた:Matlab:配列内の複数の要素を見つける
x=[1 2 3 4];
if (mod(x,2)==0)
a=x;
end
これは動作しません。どうすればこの問題を解決できますか?
は、2(または任意の数)の全ての倍数を見つけるために何のように見える、あなたはこの使用を達成することができます
a = x(mod(x,2) == 0) ;
あなたはa = x
、x
を行うと(mod(x,2)==0)
が真か偽である場合にかかわらず、まだx=[1 2 3 4]
です。 (mod(x,2)==0)
に値を割り当てることができます。 val = (mod(x,2)==0)
、この値を新しい配列に追加/追加します。
編集ありがとう:-) – Petronella
は、ベクターnumberList = [ 1, 2, 3, 4, 5, 6];
、あなたがindices = find(mod(numberList, number) ==0);
を使用して数の倍数であるnumberList
における数字のインデックス(ベクトル内の位置)を見つけることができnumber = 2;
数を考えます。
この倍数のリストを表示することができます:multiples = numberList(indices)
。
multiples =
2 4 6
編集ありがとう! – roadRunner
インデックスを使用していないことに注意してください。 'a = x'は' x'を 'a'にコピーします –