アルゴリズム (全101問中56問目)
No.56
次の流れ図による処理を複数回実行した場合,途中に出現し得る実行順序はどれか。ここで,二重線は並列処理の同期を表す。
出典:平成21年秋期 問6
- B→A→B→A
- B→X→A→Y
- X→B→A→Y
- Y→X→B→A
- [出題歴]
- ソフトウェア開発技術者 H18秋期 問14
分類
テクノロジ系 » アルゴリズムとプログラミング » アルゴリズム
正解
イ
解説
二重線で表わされる並列処理の同期は、2つの流れ図を同期させる役目を持っています。
左側の流れ図では、Bの処理が終わっても右側のYの処理が終了するまでAの処理に移ることができません。同じく右側の流れ図では、Yの処理が終わっても左側のBの処理が終了するまでXの処理に移ることができず待ち状態となります。
この条件のもとで出現し得る実行順序は「イ」だけです。
左側の流れ図では、Bの処理が終わっても右側のYの処理が終了するまでAの処理に移ることができません。同じく右側の流れ図では、Yの処理が終わっても左側のBの処理が終了するまでXの処理に移ることができず待ち状態となります。
この条件のもとで出現し得る実行順序は「イ」だけです。
- 2回目のB→Aのときに入るべきX→Yの処理がありません。
- 正しい。
- 二重線で同期が1度とられるので、Xの次に出現可能な処理は、AもしくはYだけです。
- 「ウ」と同じく、この流れ図の場合Xの次にはAかYの処理が出現するはずです。