[更新日]1998.11.06


  次の問1,問2は必須問題です。全問解答してください。  

問1  次の流れ図の説明及び流れ図を読んで、設問に答えよ。

〔流れ図の説明〕

大きさ n の配列 T の各要素 T(1),T(2),…,T(n) に異なる値が昇順に 格納されている。与えられた変数 data と同じ値が格納されている要素を 2 分探索法で見つける。 変数 data の値と一致した要素が見つかると,その要素番号を変数 idx に格納して 検索を終了する。見つからなかったときは,変数 idx を 0 とする。

2 分探索法による検索の概要は,次のとおりである。

(1) 最初の探索範囲は,配列全体とする。

(2) 探索範囲の中央の位置にある配列要素の値(以後,中央の値と呼ぶ)と検索する値とを比較する。

(3) 比較の結果,

 二つの値が等しければ,検索を終了する。

 “検索する値 > 中央の値”であれば,検索する値は探索範囲の前半には存在しないので,後半を次の探索範囲とし,(2) に戻る。

 “検索する値 < 中央の値”であれば,後半には存在しないので,前半を次の探索範囲とし,(2) に戻る。

 二つの値が一致せず,しかも探索範囲の要素数が 0 個となったときは,検索を終了する。

〔流れ図〕

設問 流れ図中の に 入れる正しい答えを,解答群の中から選べ。ただし,除算した結果の小数点以下は 切捨てとする。

a に関する解答群

ア 0     イ 1     ウ n−1

エ n     オ n+1    カ n÷2

b,c に関する解答群

ア high−1 → mid     イ high−low → idx

ウ high−low → low    エ high÷2 → low

オ low+1 → mid     カ low×2 → high

キ mid → idx       ク (high−low)÷2 → mid

ケ (high+low)÷2 → mid


問2 次の流れ図の説明及び流れ図を読んで、設問1,2に答えよ。

〔流れ図の説明〕

変数 In に格納されている文字列を,次のとおりに変換して変数 Out に格納する。

変数 In に格納されている文字列を先頭から調べて,変数 S に格納されている文字列と 一致する部分があれば,変数 R に格納されている文字列に置き換える。ただし, 変数 S の文字数は 0 でないものとする。流れ図中で使用している主な変数は, 表のとおりである。

(例)

In 

      ↓

   S を“はにわ”,R を“5羽”として実行する。   

      ↓

Out

表 流れ図中で使用している主な変数

変数名

内容

In,InN

変換対象文字列と文字数

S,SN

検索する文字列と文字数

R,RN

置換する文字列と文字数

Out,OutN

変換後文字列と文字数

〔流れ図〕


設問1 In=“○×○×○”,S=“○×○”,R=“△”のとき,流れ図中の αの処理内容を“K+1 → K”に変更すると,変数 Out の内容はどうなるか。 正しい答えを,解答群の中から選べ。

解答群

ア “○×○×○” イ “△○×○” ウ “△△”

エ “△△△”   オ “△×○”  カ “△×△×○”

設問2 文字列を置換した回数を RCNT に求める機能を追加するには,

         
の処理が必要である。これらの処理を追加すべき正しい位置を,解答群の中からそれぞれ選べ。

解答群

ア      イ      ウ      エ      オ 

カ      キ 


戻る 次頁:問03〜06