分岐網羅と条件網羅
出典: 平成29年度 春期 応用情報技術者試験 午前 問48 (IPA)
流れ図において,分岐網羅を満たし,かつ,条件網羅を満たすテストデータの組みはどれか。
テストデータ(各選択肢は (x, y) の組の集合)
| x | y | |
|---|---|---|
| ア | 2 | 2 |
| 1 | 2 | |
| イ | 1 | 2 |
| 0 | 0 | |
| ウ | 1 | 2 |
| 1 | 1 | |
| 0 | 1 | |
| エ | 1 | 2 |
| 0 | 1 | |
| 0 | 2 |

- ア (x, y)=(2, 2),(1, 2)
- イ (x, y)=(1, 2),(0, 0)
- ウ (x, y)=(1, 2),(1, 1),(0, 1)
- エ (x, y)=(1, 2),(0, 1),(0, 2)
正解と解説を見る
正解: エ
- ア: (2, 2)、(1, 2) は 1 つ目の判定が常に Yes で、No の分岐を通りません。
- イ: (1, 2)、(0, 0) では y=1 が一度も真になりません。条件網羅を満たしません。
- ウ: (1, 2)、(1, 1)、(0, 1) では 1 つ目の判定が常に Yes で、No の分岐を通りません。
- エ: 3 つの条件が全て真と偽の両方になり、全ての分岐も通るので正しい答えです。
ポイント
条件は 3 つ (x≧1、y=1、y>1) です。
- 分岐網羅: 1 つ目の判定 (x≧1 or y=1) と 2 つ目の判定 (y>1) で、それぞれ Yes、No になるデータが必要です。
- 条件網羅: 3 つの条件それぞれが、真と偽の両方になる必要があります。
エのデータで確認します。
| (x, y) | x≧1 | y=1 | y>1 | 1 つ目 | 2 つ目 |
|---|---|---|---|---|---|
| (1, 2) | 真 | 偽 | 真 | Yes | Yes |
| (0, 1) | 偽 | 真 | 偽 | Yes | No |
| (0, 2) | 偽 | 偽 | 真 | No | Yes |
全ての条件が真偽の両方になり、1 つ目も 2 つ目も Yes、No の両方を通ります。