책 내용 질문하기
6섹션 4번문제 해설 디버깅표 질문합니다.
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
475
조회수
286
작성일
2019-08-05
작성자
탈퇴*원
첨부파일

 

답은 맞았는데 디버깅표를 보고 의아해서 이게 어떻게 이렇게 나오지 하다가 

https://sinagong.gilbut.co.kr/it/qna/qna_view?qa_no=367878&gl_code=001001002&gl_code_num=8438&fr_bord_div=SN_IT0401&st=&ord=date&asc=desc&search_F=TOTAL&search_S=76%EC%AA%BD&sCase=B&license=001001001&custombook=&per_page= 

 

답변을 보고 가로로 대응시키면 안되는 것을 알았습니다. 근데 위 링크에서 

 

참고로 회원님이 문의하신 것처럼 각 변수의 가로 위치를 맞춰 디버깅을 수행하면 다음과 같습니다.

 

 

i

hap

출력

10

9

8

7

6

5

4

3

2

1

0

 

 

7

 

 

11

 

 

12

12

 

이렇게 써주셨는데 이것도 잘못된 것이 아닌가요?...

아래 설명으로 보면 아이가 8로 들어갈때 hap값이 7로 누적된다고 설명해주셨는데 

그럼 이렇게 되야 맞는게 아닌가요?

 

i 누적hap
10 0
9 0
8 7
7 7
6 7
5 11
4 11
3 11
2 12

 

아무리 봐도 이해가 가지 않아서 질문드립니다. 만약 위에 디버깅표가 틀렸다면

어느부분에서 틀렸는지 알려주세요...

 

답변
2019-08-06 10:29:18

안녕하세요 길벗수험서 운영팀입니다.

 

음.. 디버깅표의 작성방법은 작성하는 본인의 편의를 위한 것이라 명확한 작성방법은 없습니다.

단순히 값의 변화만 정확히 기록하였고, 큰 이탈만 없다면 정상적으로 작성된 디버깅표라고 볼 수 있습니다.

다만 회원님의 디버깅표에서는 i가 마지막에 1로 변화하는 과정이 누락되었네요.

 

제가 작성한 디버깅표는 while문의 한 번의 회전에서 발생하는 변화값을 하나의 열에 기록한 것입니다.

하나의 회전은 475쪽 문제4번 해설의

3~5번을 의미합니다.

 

초기값으로 i 10, hap 0이 주어지고,(i 10, hap 0)

1회전에 i--를 수행하고, if는 수행하지 않습니다. (i 9)

2회전에 i--를 수행하고, if는 수행하지 않습니다. (i 8)

3회전에 i--를 수행하고, if를 수행합니다. (i 7, hap 7) 

4회전에 i--를 수행하고, if는 수행하지 않습니다. (i 6) 

5회전에 i--를 수행하고, if는 수행하지 않습니다. (i 5) 

6회전에 i--를 수행하고, if를 수행합니다. (i 4, hap 11) 

7회전에 i--를 수행하고, if는 수행하지 않습니다. (i 3) 

8회전에 i--를 수행하고, if는 수행하지 않습니다. (i 2) 

9회전에 i--를 수행하고, if를 수행합니다. (i 1, hap 12) 

 

위와 같은 과정을 통해서 아래와 같은 디버깅표가 완성됩니다.

 

 

i

hap

10

0

9

 

8

 

7

7

6

 

5

 

4

11

3

 

2

 

1

12

 

 

행복한 하루되세요 :)

  • 관리자
    2019-08-06 10:29:18

    안녕하세요 길벗수험서 운영팀입니다.

     

    음.. 디버깅표의 작성방법은 작성하는 본인의 편의를 위한 것이라 명확한 작성방법은 없습니다.

    단순히 값의 변화만 정확히 기록하였고, 큰 이탈만 없다면 정상적으로 작성된 디버깅표라고 볼 수 있습니다.

    다만 회원님의 디버깅표에서는 i가 마지막에 1로 변화하는 과정이 누락되었네요.

     

    제가 작성한 디버깅표는 while문의 한 번의 회전에서 발생하는 변화값을 하나의 열에 기록한 것입니다.

    하나의 회전은 475쪽 문제4번 해설의

    3~5번을 의미합니다.

     

    초기값으로 i 10, hap 0이 주어지고,(i 10, hap 0)

    1회전에 i--를 수행하고, if는 수행하지 않습니다. (i 9)

    2회전에 i--를 수행하고, if는 수행하지 않습니다. (i 8)

    3회전에 i--를 수행하고, if를 수행합니다. (i 7, hap 7) 

    4회전에 i--를 수행하고, if는 수행하지 않습니다. (i 6) 

    5회전에 i--를 수행하고, if는 수행하지 않습니다. (i 5) 

    6회전에 i--를 수행하고, if를 수행합니다. (i 4, hap 11) 

    7회전에 i--를 수행하고, if는 수행하지 않습니다. (i 3) 

    8회전에 i--를 수행하고, if는 수행하지 않습니다. (i 2) 

    9회전에 i--를 수행하고, if를 수행합니다. (i 1, hap 12) 

     

    위와 같은 과정을 통해서 아래와 같은 디버깅표가 완성됩니다.

     

     

    i

    hap

    10

    0

    9

     

    8

     

    7

    7

    6

     

    5

     

    4

    11

    3

     

    2

     

    1

    12

     

     

    행복한 하루되세요 :)

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.