資格部

資格・検定の試験情報、対策方法、問題解説などをご紹介

FE 科目B 令和6年度 問4

 

 次の記述中の   に入れる正しい答えを,解答群の中から選べ。ここで,配列の要素番号は 1 から始まる。

 関数 merge は,昇順に整列された整数型の配列 data1 及び data2 を受け取り,これらを併合してできる昇順に整列された整数型の配列を返す。
 関数 merge を merge({2, 3}, {1, 4}) として呼び出すと,/*** α ***/ の行は   

〔プログラム〕
◯整数型の配列: merge(整数型の配列: data1, 整数型の配列: data2)
 整数型: n1 ← data1の要素数
 整数型: n2 ← data2の要素数
 整数型の配列: work ← {(n1 + n2)個の 未定義の値}
 整数型: i ← 1
 整数型: j ← 1
 整数型: k ← 1

 while ( (i ≦ n1) and (j ≦ n2) )
  if (data1[i] ≦ data2[j])
   work[k] ← data1[i]
   i ← i + 1
  else
   work[k] ← data2[j]
   j ← j + 1
  endif
  k ← k + 1
 endwhile

 while (i ≦ n1)
  work[k] ← data1[i]
  i ← i + 1
  k ← k + 1
 endwhile

 while (j ≦ n2)
  work[k] ← data2[j] /*** α ***/
  j ← j + 1
  k ← k + 1
 endwhile

 return work

解答群

  1. 実行されない
  2. 1 回実行される
  3. 2 回実行される
  4. 3 回実行される

解答・解説

解答

 イ

解説

 ー

前問 一覧 次問