20-3어떤 모듈의 제어 흐름 그래프를 노드와 연결 관계로 나타내면 아… | 2020년 정보처리기사실기 3회차 기출문제 상세 페이지
4
20-3
어떤 모듈의 제어 흐름 그래프를 노드와 연결 관계로 나타내면 아래 표와 같다.
| 노드 | 내용 | 다음 노드 |
|---|---|---|
| ① | flag = 0 | ② |
| ② | a > b ? | 예 → ③, 아니오 → ④ |
| ③ | flag = 1 | ④ |
| ④ | a = a - 3 | ⑤ |
| ⑤ | CALL calc(a, flag, res) | ⑥ |
| ⑥ | res > 0 ? | 예 → ①, 아니오 → ⑦ |
| ⑦ | PRINT res | 종료 |
분기(결정) 커버리지를 100% 만족하도록 테스트 경로 2개를 노드 번호 순서로 적으시오. (각 경로는 ①에서 시작해 ⑦ 또는 다시 ①로 돌아오는 지점까지 적는다.)
해설
경로 1: ①→②→③→④→⑤→⑥→①
경로 2: ①→②→④→⑤→⑥→⑦
(또는 ①→②→③→④→⑤→⑥→⑦ 과 ①→②→④→⑤→⑥→①)
[해설]
분기 커버리지는 모든 판단 노드의 참과 거짓을 각각 한 번 이상 지나야 한다. 판단 노드는 ②와 ⑥ 두 개다.
- 경로 1: ② 예(③ 경유), ⑥ 예(①로 복귀)
- 경로 2: ② 아니오(③ 건너뜀), ⑥ 아니오(⑦ 출력)
두 경로로 네 개의 분기가 모두 덮인다. ⑥의 예/아니오를 서로 바꾼 조합 ①②③④⑤⑥⑦ / ①②④⑤⑥①도 정답이다.
내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.