配列内の 1 桁の場所と 1 の前の 0 桁の数を見つける必要があります。これは、以下の配列で達成する必要があることを意味しますplaceOfOne=3
numberOfZeros=2
。
a = [0 0 1 0]
このための機能はありますか?ベスト、エルナス
配列内の 1 桁の場所と 1 の前の 0 桁の数を見つける必要があります。これは、以下の配列で達成する必要があることを意味しますplaceOfOne=3
numberOfZeros=2
。
a = [0 0 1 0]
このための機能はありますか?ベスト、エルナス
findを使用して 1 の場所を取得します
placeOfOne = find(a)
そして、その前のゼロを合計します。
numberOfZeros = sum(a(1:placeOfOne) == 0)
isMember
0 と 1 以外の要素がある場合は、関数を使用できます。
また、0 と 1 しかない場合、0 の数は である(position of 1) - 1
はずですよね?
少し異なるアプローチ
a = [0 0 1 0];
placeOfOne = find(a==1);
digitsBeforeOne = a(1:placeOfOne);
numberOfZeros= length(find(digitsBeforeOne ==0));