平成13年秋期試験問題 午前問41

午前試験免除制度対応!基本情報技術者試験のeラーニング【独習ゼミ】
プログラムの構造に関する記述のうち,適切なものはどれか。

  • 再帰的処理のためには,実行途中の状態をFIFO方式で記録し,制御する必要がある。
  • 再入可能プログラムを実現するためには,プログラムを手続き部分とデータ部分に分割して,データ部分をプロセスごとにもつ必要がある。
  • 逐次再使用可能なプログラムは,再入可能でもある。
  • 複数のプロセスで同時に実行できるようにしたプログラムは,再帰的である。
正解 問題へ
分野:テクノロジ系
中分類:アルゴリズムとプログラミング
小分類:プログラミング
解説
  • 再帰的処理では、入れ子式でプログラムが実行されるので、実行途中のプログラムの状態を何階層にもわたって保存しておく必要があります。これを実現するために用いられるのが、LIFO(後入れ先出し)の性質をもつスタックです。関数の呼出し時に局所変数等をスタックに積み、実行が終わったらスタックから取り除くことにより、関数の生成と消滅を制御します。
  • 正しい。再入可能プログラムとは、そのプログラムの実行中に別のタスクから呼び出されても、それぞれに正しい結果を返すことができるプログラムの性質です。再入可能であるためには、複数のプロセス間のデータが混じらないように、データ部分をプロセスごとに確保する必要があります。
  • 逐次再使用可能は、他のタスクが使い終わったプログラムを再ロードしなくても正しい結果を返すことができる特性ですが、複数のタスクに対して正しい結果を返すこと(再入可能性)は保証していません。
  • 複数のプロセスで同時に実行できるようにしたプログラムは、再入可能なプログラムです。

この問題の出題歴


Pagetop