책 내용 질문하기
질문드립니다.
도서
2017 시나공 정보처리기사 실기(산업기사 포함) 특별개정판
페이지
109
조회수
46
작성일
2017-04-04
작성자
첨부파일


109쪽의 20번의 경우 for 문에서 마지막 a가 10일때 hap 증가를 수행하고 값이 산출되는데

117쪽의 40번의 경우 i가 6되고 ++i의 적용없이 바로 종료가 되나요 ?

두 문장이 어떤 차이가 있는거죠 ?

답변
2017-04-05 09:47:18

안녕하세요.

for문은 초기값이 지정되고 최종값과 비교한 후 조건이 맞으면 반복문을 수행합니다.

반복문을 수행한 후 증가값이 적용되고 최종값과 비교합니다. 기본적으로 반복문 수행중에는 증가값이 적용된 후 최종값을 비교합니다.

최종값에서 조건을 만족하지 않으면 증가값만 적용하고 종료되는 것이죠.

여기서 109쪽은 증가값 부분에 ++a와 hap+=a 가 함께 있어 같이 수행됩니다.

즉 최종값에서 조건이 만족하지 않는 경우에도 ++a와 hap+=a는 둘 다 수행되는 것이죠.

하지만 117쪽은 hap+=i는 반복문 안쪽에 있습니다.

증가값이 적용된 후 최종값 조건이 만족하지 않으면 반복문 안쪽은 수행되지 않습니다.

그러므로 마지막 증가값이 적용된 이후 109쪽과 처리가 달라질 수 있게 됩니다.

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

  • *
    2017-04-05 09:47:18

    안녕하세요.

    for문은 초기값이 지정되고 최종값과 비교한 후 조건이 맞으면 반복문을 수행합니다.

    반복문을 수행한 후 증가값이 적용되고 최종값과 비교합니다. 기본적으로 반복문 수행중에는 증가값이 적용된 후 최종값을 비교합니다.

    최종값에서 조건을 만족하지 않으면 증가값만 적용하고 종료되는 것이죠.

    여기서 109쪽은 증가값 부분에 ++a와 hap+=a 가 함께 있어 같이 수행됩니다.

    즉 최종값에서 조건이 만족하지 않는 경우에도 ++a와 hap+=a는 둘 다 수행되는 것이죠.

    하지만 117쪽은 hap+=i는 반복문 안쪽에 있습니다.

    증가값이 적용된 후 최종값 조건이 만족하지 않으면 반복문 안쪽은 수행되지 않습니다.

    그러므로 마지막 증가값이 적용된 이후 109쪽과 처리가 달라질 수 있게 됩니다.

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

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