皆さんこんばんは
c#を勉強し始めて間もない者です。
今回は、配列の要素の中から条件をみたしているものがその配列の何番目の要素なのか、そして分かった添え字を代入した配列の作り方を質問させていただきたいです。
もともとは、振り子の周期を測定しようとしておりArduinoのセンサー機器から得られたデータから周期を出そうとしています。数値が295よりも多きものを抜き出すということはできました。しかし、その要素がもともとの配列(ここではVal)のなかで何番目の要素なのかを知りたいのですがうまくいきません。私は、もともとの配列の条件を満たしている要素の添え字を抽出した配列を新たに構成したいと考えています。
(下の例で言うと300を超えている要素の添え字で構成された配列{4,8,12,16,20,25,30}というものを作りたいです。)
皆様、どうかご教授願います。
以下に例として書いてみたコードのほうを載せさせていただきます。
<コード>
//実際はこのような数値が計測されるため例として抜き出して配列Valとして書き出しています。
var Val = new int[] { 20,21,24,324,23,22,21,327,21,21,21,329,21,21,21,323,21,21,21,324,21,21,21,21,326,21,21,21,21,344,,21,21,21,21,21 };
//Valの隣り合う要素の値の差を要素値とする配列 A を作る var A = new int[Val.Length - 1];
//c配列の要素数は適当です
int[] C = new int[101];
for (int i = 0; i < A.Length; ++i)
{
A[i] = Val[i + 1] - Val[i];
}
//配列Aの要素の中から295より大きいものを配列retに代入する
//ここから下のコードの書き方がわかりません
for( int i = 0; i < A.Length; i++)
{
n = 0;
if(A[i] >= 295)
{
C[n] = i; n = n + 1;
}
}
回答1件
あなたの回答
tips
プレビュー