令和7年度 春期 応用情報技術者試験 午前 問2
の範囲で単調に増加する連続関数 が を満たすときに,区間内で である の値を近似的に求めるアルゴリズムにおいて,(2)は何回実行されるか。
〔アルゴリズム〕
- (1) , とする。
- (2) とする。
- (3) ならば の値を近似値として終了する。
- (4) ならば として,そうでなければ とする。
- (5) (2)に戻る。
解答・解説
正解: ア. 10
このアルゴリズムは 二分法(バイセクション法) と呼ばれる、方程式 の解を近似的に求める手法です。
初期状態として、区間幅は です。
(2)の処理で を区間の中点とするため、(4)を通って次のループに進むごとに区間幅は半分になります。
したがって、 回目の(2)が実行された直後の (3)の判定式における (現在の区間幅の半分)は、 となります。
終了条件は すなわち です。
これを満たす最小の を求めます。
よって、条件を満たす最小の整数は です。
したがって、(2)は 10 回実行されます。
各選択肢の解説
- ア: 正解です。10回目の実行で判定値が となり、 を下回るためアルゴリズムは終了します。
- イ: 実行回数が20回の場合、判定値は となり をはるかに下回ります。10回目で既に終了条件を満たすため誤りです。
- ウ: 実行回数が100回の場合、終了条件に達した時点でアルゴリズムは終了するため誤りです。
- エ: 実行回数が1,000回の場合も同様に誤りです。