第2種情報処理技術者試験 1998年度 = 平成10年度・秋期 午前 問14

 長さm、nの文字列を格納した配列X、Yがある。図は、これらの文字列をこの順に連結した文字列を配列Zに格納する処理の流れ図である。a、bに入れる処理として、正しいものはどれか。ここで、1文字が一つの配列要素に格納されるものとする。


 ア  X(k) → Z(k)   Y(k) → Z(m+k)  
 X(k) → Z(k)   Y(k) → Z(n+k)  
 Y(k) → Z(k)   X(k) → Z(m+k)  
 Y(k) → Z(k)   X(k) → Z(n+k)  

解答

 ア

解説

 文字列を連結するアルゴリズムを問う問題です。ここでは、
  配列X … 文字列"ABCD"
  配列Y … 文字列"123"
を連結するとしましょう。すなわち、mの値は4で、nの値は3です。
 まず、ループ1では、下図に示すように配列X(1)~X(4)をZ(1)~Z(4)にそのままコピーします。

すなわち、kを1からmまで増やしながら、X(k)をZ(k)に代入します。
 次に、ループ2では、下図に示すように配列Y(1)~Y(3)をZ(5)~Z(7)にコピーします。

すなわち、kを1からnまで増やしながら、Y(k)をZ(m+k)に代入します。


BohYoh.comトップページへ