책 내용 질문하기
2회 합격전략집 실전 모의고사 3회 18번 질문이요
도서
2020 시나공 정보처리기사 실기 [기본서]
페이지
0
조회수
210
작성일
2020-10-15
작성자
탈퇴*원
첨부파일

해당 문제에서 func(p,q)를 처음 실행하면 p=11, q=7이 되고 while(x>0)을 한번 거치고나면 x=5, y=7이 되잖아요? 이러면 위의 if(x>y)의 조건을 만족 안해서 아래의 else문으로 가야되는것 아닌가요? 

답변
2020-10-16 11:24:16

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

 

while(x>0)은 한 번 거치지 않습니다.

 

처음 거치면 5

두 번째 2

세 번째 1

네 번째 0이 되고 나서야 빠져나가죠.

 

그리고 그때서야 if문이 true일 때 수행할 코드가 모두 수행된 것이므로 if문이 종료되고 main으로 돌아가 프로그램이 종료됩니다.

 

while문은 반복, if문은 1회만 수행됩니다. if의 x>y의 조건식을 다시 한 번 수행할 이유가 없습니다.

 

행복한 하루되세요 :)

  • 관리자
    2020-10-16 11:24:16

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

     

    while(x>0)은 한 번 거치지 않습니다.

     

    처음 거치면 5

    두 번째 2

    세 번째 1

    네 번째 0이 되고 나서야 빠져나가죠.

     

    그리고 그때서야 if문이 true일 때 수행할 코드가 모두 수행된 것이므로 if문이 종료되고 main으로 돌아가 프로그램이 종료됩니다.

     

    while문은 반복, if문은 1회만 수행됩니다. if의 x>y의 조건식을 다시 한 번 수행할 이유가 없습니다.

     

    행복한 하루되세요 :)

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