基本情報トップに戻る
B難易度: 2026年度

基本情報技術者 予想問題B 第73問

問題

次の擬似言語プログラムは配列を二分探索する。探索対象target=50のとき、ループが終了したときのfoundの値はどれか。 整数型の配列: data ← {10, 20, 30, 40, 50, 60, 70} 整数型: target ← 50 整数型: low ← 1 整数型: high ← 7 論理型: found ← false while (low ≦ high and found = false) 整数型: mid ← (low + high) / 2 if (data[mid] = target) found ← true elseif (data[mid] < target) low ← mid + 1 else high ← mid - 1 endif endwhile

選択肢

  1. 1ア true
  2. 2イ false
  3. 3ウ 50
  4. 4エ 0
解答と解説を見る

正解

1. ア true

解説

二分探索でtarget=50を探します。mid=(1+7)/2=4(小数切捨)、data[4]=40<50なのでlow=5。mid=(5+7)/2=6、data[6]=60>50なのでhigh=5。mid=(5+5)/2=5、data[5]=50で一致、found=true。

Bの関連問題

この調子で演習を続けよう

スキマ資格では基本情報の全640問を分野別・難易度別に体系的に学習できます。基本情報技術者は科目A(広く浅く)と科目B(プログラミング・アルゴリズム)の両輪での対策が必要です。