책 내용 질문하기
118페이지 41번질문
도서
2017 시나공 정보처리기사 실기(산업기사 포함) 특별개정판
페이지
118
조회수
60
작성일
2017-06-08
작성자
탈퇴*원
첨부파일

118페이지 41번질문입니다,

prnt가 제5회까지 반복을 하고 역으로 다시 돌아가서 젤 처음에 불렀던 prnt로 돌아갔는데,

만약 여기서 prnt반복횟수를 묻는 문제가 나온다면, prnt가 5인가요?? 아니면 0인가요??

답변
2017-06-08 10:51:06

안녕하세요.

prnt()가 반복되는 반복 횟수를 계산하려면 prnt() 함수가 호출될 때마다 값을 1씩 누적시킬 임시 변수를 만들어서 그 변수에 값을 누적해야 합니다.

결국 prnt() 함수가 시작되는 위치에 임수 변수를 두어 1씩 누적하면 되는데, 이렇게 누적할 경우

prnt()는 처음 main 함수에서 호출해서 prnt()에 진입한 후 +1

prnt() 함수의 while 문에 안에서 a가 1인 상태로 prnt()를 1회 호출한 후 prnt()에 다시 진입한 후 +1

prnt() 함수의 while 문에 안에서 a가 2인 상태로 prnt()를 2회 호출한 후 prnt()에 다시 진입한 후 +1

prnt() 함수의 while 문에 안에서 a가 3인 상태로 prnt()를 3회 호출한 후 prnt()에 다시 진입한 후 +1

prnt() 함수의 while 문에 안에서 a가 4인 상태로 prnt()를 4회 호출한 후 prnt()에 다시 진입한 후 +1

prnt() 함수의 while 문에 안에서 a가 5인 상태로 prnt()를 5회 호출한 후 prnt()에 다시 진입한 후 +1

이후 호출한 prnt() 함수로 복귀할 때 prnt() 함수의 시작 위치로 복귀되는 것이 아니므로 호출 횟수의 추가 증가는 없이 복귀합니다.

그러므로

총 6회 호출이 되므로 반복 횟수는 6이 됩니다.

오늘도 즐거운 하루 되세요.

  • *
    2017-06-08 10:51:06

    안녕하세요.

    prnt()가 반복되는 반복 횟수를 계산하려면 prnt() 함수가 호출될 때마다 값을 1씩 누적시킬 임시 변수를 만들어서 그 변수에 값을 누적해야 합니다.

    결국 prnt() 함수가 시작되는 위치에 임수 변수를 두어 1씩 누적하면 되는데, 이렇게 누적할 경우

    prnt()는 처음 main 함수에서 호출해서 prnt()에 진입한 후 +1

    prnt() 함수의 while 문에 안에서 a가 1인 상태로 prnt()를 1회 호출한 후 prnt()에 다시 진입한 후 +1

    prnt() 함수의 while 문에 안에서 a가 2인 상태로 prnt()를 2회 호출한 후 prnt()에 다시 진입한 후 +1

    prnt() 함수의 while 문에 안에서 a가 3인 상태로 prnt()를 3회 호출한 후 prnt()에 다시 진입한 후 +1

    prnt() 함수의 while 문에 안에서 a가 4인 상태로 prnt()를 4회 호출한 후 prnt()에 다시 진입한 후 +1

    prnt() 함수의 while 문에 안에서 a가 5인 상태로 prnt()를 5회 호출한 후 prnt()에 다시 진입한 후 +1

    이후 호출한 prnt() 함수로 복귀할 때 prnt() 함수의 시작 위치로 복귀되는 것이 아니므로 호출 횟수의 추가 증가는 없이 복귀합니다.

    그러므로

    총 6회 호출이 되므로 반복 횟수는 6이 됩니다.

    오늘도 즐거운 하루 되세요.

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