0≦x≦1 の範囲で単調に増加する連続関数 f(x) が f(0)<0≦f(1) を満たすとき,区間内で f(x)=0 の値を近似的に求めるアルゴリズムにおいて,(2)は何回実行されるか。
〔アルゴリズム〕
(1)x₀←0,x₁←1 とする。
(2)x←(x₀+x₁)/2 とする。
(3)x₁-x<0.001 ならば x の値を近似値として終了する。
(4)f(x)≧0 ならば x₀←x とする。
(5)(2)に戻る。
- 10
- 20
- 100
- 1,000
解答
ア
解説
1回目の実行では
x₀=0 x₁=1 x=(0+1)/2=1/2 となり
x₁-x=1/2 になります
同様に2回目の実行では
x₀=1/2,x₁=1, x=(1/2+1)/2=3/4 となり
x₁-x=1/4 になります
このように実行を繰り返すと、x₁-xの値は
1/2→1/2²→1/2³→1/2⁴→…
と1回ごとに半減していきます
近似の終了条件である x₁-x<0.001 となるのは
1/2¹⁰ = 1/1024
つまり、10回目の実行となります
参考情報
分野・分類
| 分野 | テクノロジ系 |
| 大分類 | 基礎理論 |
| 中分類 | 基礎理論 |
| 小分類 | 応用数学 |
出題歴
- AP 令和7年度春期 問2
- AP 平成28年度秋期 問2