【MQL4勉強プログラミング】ArrayMinimum()関数で最小値を格納している要素のインデックスを取得

ザフナーラボブログ

ArrayMinimum()関数は、指定した配列に含まれる要素のうち、最小値を格納している要素の位置(=インデックス)を取得するために使用します。

ArrayMainimum()関数は、以下のように定義されています。

int ArrayMinimum(
const void array[],
int count=WHOLE_ARRAY,
int start=0
);

各引数の意味は、以下のとおりです。

  • const void array[]
    要素の最小値を取得したい配列名を指定します。
  • int count
    最小値を検索する要素数を指定します。
    標準ではすべての要素について最小値を検索します。
  • int start
    最小値の検索を始める要素の位置(=インデックス)を指定します。

戻り値

最小値を格納している要素の位置(=インデックス)を返します。

最小値の検索が失敗した場合は、「-1」を返します。

具体例

特定の配列の要素のうち、最小値を取得したい場合は、以下のように記述します。


int start()
{
 double Array[5] = {4,1,6,3,9}; //配列の宣言

 int Min_Value_Index
 = ArrayMinimum(Array,WHOLE_ARRAY,0);
 /*変数「Min_Value_Index」に配列「Array」の要素のうち、最小値を格納している要素のインデックスが格納される*/

 double Min_Value = Array[Min_Value_Index];
 /*変数「Min_Value_Index」には「1」が格納されているので、変数「Min_Value」には配列「Array」の要素のうち、最小値である「1」が格納される*/

 return(0);
}