책 내용 질문하기
실전 모의고사 1회 1번 질문입니다.
도서
2020 시나공 정보처리기사 실기 [기본서]
페이지
0
조회수
214
작성일
2020-10-12
작성자
탈퇴*원
첨부파일

1번에서 8번째 줄에서 k ==j 에서 5하고 7이 어떻게 답에 포함되어 있는지 이해하기 어렵습니다.

 

while문을 반복하면 매번 while문을 다시 반복할때마다 j가 2로 초기화 되어서 2 와 3의 숫자밖에 달성을 못하는데

 

2 3 5 7 의 답중에서 5와 7이 어떻게 결과가 나오는지 이해하기 어렵습니다..

답변
2020-10-12 11:50:44

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

 

(번호는 해설의 번호입니다.)

k값은 전체 반복문이 반복될 때 마다 1씩 증가합니다.

(3번) j는 위의 반복문이 반복될때 마다 2부터 나머지가 0이 나오는 수까지 반복되죠.

4, 6의 경우 2로 나누게 되면 k%j!=0이 거짓이 되어 빠져나가고 k==j가 아니므로 출력되지 않고 넘어갑니다.

5, 7의 경우 2부터 나누다가 자기수(5와 7)가 되었을 때에나 k%j!=0이 거짓이 되어 빠져나가고 k==j가 참이 되어 출력되게 됩니다.

 

디버깅표를 직접 작성해 보시거나 해설에 나와있는 디버깅표를 하나씩 체크하시면서 어느 부분에서 자신의 생각과 달라지는지 확인해보세요.

 

행복한 하루되세요 :)

  • 관리자
    2020-10-12 11:50:44

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

     

    (번호는 해설의 번호입니다.)

    k값은 전체 반복문이 반복될 때 마다 1씩 증가합니다.

    (3번) j는 위의 반복문이 반복될때 마다 2부터 나머지가 0이 나오는 수까지 반복되죠.

    4, 6의 경우 2로 나누게 되면 k%j!=0이 거짓이 되어 빠져나가고 k==j가 아니므로 출력되지 않고 넘어갑니다.

    5, 7의 경우 2부터 나누다가 자기수(5와 7)가 되었을 때에나 k%j!=0이 거짓이 되어 빠져나가고 k==j가 참이 되어 출력되게 됩니다.

     

    디버깅표를 직접 작성해 보시거나 해설에 나와있는 디버깅표를 하나씩 체크하시면서 어느 부분에서 자신의 생각과 달라지는지 확인해보세요.

     

    행복한 하루되세요 :)

  • 관리자
    2020-10-13 10:18:53

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

     

    디버깅표를 잘못읽으셨습니다.

     

    일반적으로 디버깅표는 단순히 해당 변수의 값의 변화만을 기록합니다.

    즉 반복횟수에 맞춰서 같은 열에 배치되거나 하는 것은 편의를 위한 다양한 기록 방법 중에 하나죠.

     

    해당 방식대로 디버깅표를 구성하면 다음과 같습니다.

     

     

    행복한 하루되세요 :)

  • *
    2020-10-12 15:01:30

    답변 감사합니다!

     

    저는 출력값이 k와 j가 일치하지 않는데 어떻게 2 3 5 7 이라고 출력값이 나오는지 모르겠습니다 ㅠ

     

    그리고 j가 2 2 3 으로 반복하는거는 j++에 의해서도 while문을 반복할때 j를 2로 초기화하기 때문인가죠??

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