平成21年度秋期 応用情報技術者試験 午前 問6

分野:アルゴリズムとプログラミング(データ構造・アルゴリズム・探索整列・計算量の実際・擬似言語・プログラム言語・データ記述言語)|実際に出題されたIPA過去問題

流れ図で表される処理を複数回実行した場合,途中に出現し得る実行順序はどれか。ここで,二重線は並列処理の同期を表す。

問題の図表(IPA公式問題冊子より引用)
図表:IPA公式問題冊子より
  1.  B→A→B→A
  2.  B→X→A→Y
  3.  X→B→A→Y
  4.  Y→X→B→A
解答・解説を見る

正解:イ

AI解説

並列処理の同期点(二重線)をまたぐ実行順序は、同期前の各分岐(X側・Y側)内の処理順序は保たれるが、異なる分岐間の処理は順序が入れ替わり得る。設問の選択肢の中で、同期構造と矛盾しない順序として「B→X→A→Y」が実行順序として出現し得る。 ア: 「B→A→B→A」はB→Aの後に再びB→Aが出現しており、1回の実行における単純な分岐・合流構造と矛盾するため出現し得ない順序である。 イ: 正しい。並列処理の分岐と同期の構造上、B(ある分岐の処理)の後にX、続いてA、その後Yという順序は同期規則に反しないため出現し得る。 ウ: 「X→B→A→Y」はXとBの順序関係が流れ図の分岐構造と整合しないため出現し得ない組合せである。 エ: 「Y→X→B→A」は同期後に実行されるべき処理が同期前に出現する形になっており、同期の順序関係に矛盾するため出現し得ない。 💡 並列処理の同期問題は、各分岐内の処理順序は固定だが分岐間の順序は自由に入れ替わり得るという原則を踏まえ、同期点をまたいだ順序関係の矛盾がないかを確認するのがコツだ。

出典:平成21年度 秋期 応用情報技術者試験 午前 問6 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。図表はIPA公式問題冊子から引用しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・2,640問収録)

「アルゴリズムとプログラミング」分野の攻略ポイント

データ構造・アルゴリズム・探索と整列・計算量・擬似言語・プログラム言語・データ記述言語が対象です。擬似言語のトレースは時間はかかるものの、落ち着いて表を書けば必ず正解にたどり着く「確実に取れる」問題です。

アルゴリズムとプログラミングの攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(アルゴリズムとプログラミング(データ構造・アルゴリズム・探索整列・計算量の実際・擬似言語・プログラム言語・データ記述言語))の過去問