책 내용 질문하기
문제 40번 문제
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
123
조회수
167
작성일
2019-04-10
작성자
탈퇴*원
첨부파일

for(i =1; i<=5; ++1);

hap +=i; 부분에서 합의 출력 값이 틀린게 아닌지

알고 싶습니다. hap=hap+i로 알고 있는데 답이

6이어서 답변 부탁드립니다 

답변
2019-04-11 10:54:44

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

 

for문의 마지막을 확인하세요. 세미콜론(;)이 붙어 잇음으로 for문은 하위의 문장 없이 혼자 반복하는 것을 확인할 수 있습니다.

 

또한 for문의 각 부분의 수행 순서를 숙지하셔야 합니다.

for(; ; ) {

  ④;

}

 

위의 for문이 3회 반복한다고 가정했을 때, 순서는

1: , (조건 참),

2: , (조건 참),

3: , (조건 참),

4: , (조건 거짓) <탈출>

입니다.

 

 

40번에서는 ④가 존재하지 않으니 이를 고려치 않더라도 ④가 수행되지 않은 4회 때 증가식 ③번이 한번 더 수행되고 빠져나옴을 알 수 있습니다.

(for(i=1;i<=3;i++) 로 3회 수행된다고 가정하면 증가식이 3번 수행되어 i가 4로 빠져나오게 되는 것과 같이 말이죠)

 

때문에 최종값 5에서 1이 증가된 6이 hap에 더해지는 것이죠.

 

행복한 하루되세요 :)

  • 관리자
    2019-04-11 10:54:44

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

     

    for문의 마지막을 확인하세요. 세미콜론(;)이 붙어 잇음으로 for문은 하위의 문장 없이 혼자 반복하는 것을 확인할 수 있습니다.

     

    또한 for문의 각 부분의 수행 순서를 숙지하셔야 합니다.

    for(; ; ) {

      ④;

    }

     

    위의 for문이 3회 반복한다고 가정했을 때, 순서는

    1: , (조건 참),

    2: , (조건 참),

    3: , (조건 참),

    4: , (조건 거짓) <탈출>

    입니다.

     

     

    40번에서는 ④가 존재하지 않으니 이를 고려치 않더라도 ④가 수행되지 않은 4회 때 증가식 ③번이 한번 더 수행되고 빠져나옴을 알 수 있습니다.

    (for(i=1;i<=3;i++) 로 3회 수행된다고 가정하면 증가식이 3번 수행되어 i가 4로 빠져나오게 되는 것과 같이 말이죠)

     

    때문에 최종값 5에서 1이 증가된 6이 hap에 더해지는 것이죠.

     

    행복한 하루되세요 :)

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