IPA過去問ドリル

平成27年度 秋期 基本情報技術者試験 午前 問3

テクノロジ/基礎理論

関数 f(x) は,引数も戻り値も実数型である。この関数を使った,①~⑤から成る手続を考える。手続の実行を開始してから②~⑤を十分に繰り返した後に,③で表示される y の値に変化がなくなった。このとき成立する関係式はどれか。 ① x ← a ② y ← f(x) ③ y の値を表示する。 ④ x ← y ⑤ ②に戻る。

出典:平成27年度 秋期 基本情報技術者試験 午前 問3

正解:エ

解説

手続はxにaを代入した後,y←f(x)を計算して表示し,そのyを新たなxとして②に戻る,という操作を繰り返します。十分に繰り返した後にyの値が変化しなくなったということは,ある回で計算したyを次の回のxに使っても同じyが得られる,つまりf(y)=yという関係(不動点)が成り立っていることを意味します。

選択肢ごとの解説

  • 誤り。これは1回目の計算結果を表す式であり,値が変化しなくなった後の関係を表すものではありません。
  • 誤り。値が収束した状態でfの戻り値が0になるとは限りません。
  • 誤り。収束後のyと最初の入力aとの関係を表す式ではなく,実際にはyがxとして使われ続けます。
  • 正しい。繰返しによりxにyが代入され続け,値が変化しなくなったということは,f(y)を計算しても同じyが得られる,すなわちf(y)=yが成立していることを意味します。
基本情報技術者の過去問を演習モードで解く