次の記述中の □ に入れる正しい答えを,解答群の中から選べ。ここで,配列の要素番号は1から始まる。
関数searchは,二つの文字型の配列を引数data及びkeyで受け取り,dataからkeyの要素の並びと同じ並びを全て探し,その先頭の要素番号を全て格納した配列を返す。
関数searchをsearch({"a","b","a","b","c","a","b","c"}, {"a","b","c"})として呼び出すと,/*** β ***/の行の条件式が真となる回数は □ 回である。
〔プログラム〕
○整数型の配列: search(文字型の配列: data, 文字型の配列: key)
整数型: i, j, lenData, lenKey
整数型の配列: result ← {}
lenData ← dataの要素数
lenKey ← keyの要素数
for (i を 1 から (lenData-lenKey+1) まで 1 ずつ増やす)
for (j を 1 から lenKey まで 1 ずつ増やす) // α
if (data[i+j-1] が key[j] と等しい) /*** β ***/
if (j が lenKey と等しい) : resultの末尾にiの値を追加する : endif
else
αの行から始まる繰返し処理を終了する
endif
endfor
endfor
return result
1〜4キーで選択