책 내용 질문하기
2017년 6월 기출문제
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
조회수
116
작성일
2018-10-05
작성자
탈퇴*원
첨부파일

문제3번에

While (a<10)

이라고 되어있으면 a가 10일때는 실행하지 않는거 아닌가요?

9까지 하면 sum 값이 20인데

해설보니 10까지 하여 답이 30으로 되어있더라구요

답변
2018-10-05 11:50:06

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

이 경우, a가 9인 경우를 디버깅 해보면 알 수 있습니다.

while(a<10) a가 9인 경우 안의 코드를 수행합니다.

{

a++; a가 10이됩니다.

if(a%2==1) 10%2는 0이므로 다음 문장을 수행하지 않습니다.

continue;

sum += a; sum에 10을 더합니다.

}

즉 a가 10인 경우까지 sum에 더한 후 while(a<10)을 판별하기 때문에, 20에 10이 더해진 30이 출력됩니다.

행복한 하루되세요.^^

  • *
    2018-10-05 11:50:06

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

    이 경우, a가 9인 경우를 디버깅 해보면 알 수 있습니다.

    while(a<10) a가 9인 경우 안의 코드를 수행합니다.

    {

    a++; a가 10이됩니다.

    if(a%2==1) 10%2는 0이므로 다음 문장을 수행하지 않습니다.

    continue;

    sum += a; sum에 10을 더합니다.

    }

    즉 a가 10인 경우까지 sum에 더한 후 while(a<10)을 판별하기 때문에, 20에 10이 더해진 30이 출력됩니다.

    행복한 하루되세요.^^

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