search()は、配列の中から、指定した値と同じ値を探し、何番目の要素なのかを返します。同じ値のものが2つ以上あった場合には、インデックスが小さい方を返します。見つからなかった場合には-1を返します。第1引数には配列を、第2引数には検索する値を指定します。以下のコードを見てください。
on init
declare %Array_1[10] := (0,1,2,3,4,5,6,7,8,1)
declare $Number
end on
on note
if(search(%Array_1,1) = -1)
message("Not Found")
else
$Number := search(%Array_1,1)
message($Number)
end if
end on
on release
message(" ")
end on
このプログラムでは、ステータスラインに1が表示されます。Array_1[9]の1は無視されます。ついでに、以下のコードも記載しておきます。
on init
declare %Array_1[10] := (0,1,2,3,4,5,6,7,8,1)
declare $Number
end on
on note
if(search(%Array_1,9) = -1)
message("Not Found")
else
$Number := search(%Array_1,1)
message($Number)
end if
end on
on release
message(" ")
end on
この場合は、Not Foundのテキストがステータスラインに表示されます。
0 件のコメント:
コメントを投稿