1次元配列の値を検索 ArrayBsearch 関数

関数

配列関数

ArrayBsearch 関数

この関数は、1次元配列中の値を検索して、その要素のインデックス値を取得します。

昇順でソートされている配列のみしか処理が行われませんのでご注意ください。数値配列のソートは、ArraySort関数を使用します。

データ型と構成・戻り値

int ArrayBsearch(①,②,③,④,⑤);

戻り値は、検索して見つかった要素のインデックス値を返します。無い場合は、最も近い要素のインデックス値を返します。

引数 [5]

ArrayBsearch関数は 3個の引数で構成されます。


引数名データ型単位初期値説明
array[]const検索用の数値配列。
value整数
or
実数
検索する値。
countintWHOLE_ARRAY検索する要素数。「WHOLE_ARRAY」は配列全体を検索します。
startint0検索する開始のインデックス番号。0は最初の要素から検索します。
directionintMODE_ASCEND検索方向。「MODE_ASCEND」は順方向、「MODE_DESCEND」は逆方向に検索します。
※初期値があるものは省略可。但し、省略した引数以降は省略しなければなりません。

使用例

ArrayBsearch関数による配列中の数値検索

コード

// ArrayBsearch関数による配列中の数値検索
#property strict
void OnInit() {
int search = 22;             // 検索する数値

int arr[5]={20,21,22,23,24}; // ソート済みの配列
Print("検索数値のインデックス値:",ArrayBsearch(arr, search));
}

コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)

結果

検索した数値のインデックス値が取得されます。

タイトルとURLをコピーしました