책 내용 질문하기
114p 34번 문제 이해가 잘 안갑니다.
도서
2017 시나공 정보처리기사 실기(산업기사 포함) 특별개정판
페이지
114
조회수
336
작성일
2017-03-09
작성자
첨부파일

34번 문제 int i=0, hap=0; 으로 초기화 되어 있고

for문 안에서 (i=1; 1<=5; ++i, hap+=i)로 되어 있습니다.

그럼 진행에 따라서

i | ++i | hap+=i

---------

1 | 2 | 3 합은 2 3입니다

2 | 3 | 6 합은 3 6입니다

3 | 4 | 10 합은 4 10입니다

4 | 5 | 15 합은 5 15입니다

5 |가 되면 탈출 합은 5 15입니다

이게 아닌가요?

답변
2017-03-10 09:30:18

안녕하세요.

먼저 i가 1인 상태에서 종료값을 비교합니다. i<=5에서 Yes이므로 반복문을 진입합니다.

system.out.printf("합은%d %4d입니다.\n", i, hap); 에 의해

출력은 : 합은1 0입니다.

그런 다음 증가값 부분의 수식을 순차적으로 진행하여

++i로 인해 i는 2가되고 hap += i에 의해 hap은 2가 됩니다.

이어서 종료값을 비교합니다. i<=5에서 Yes이므로 반복문을 진입합니다.

system.out.printf("합은%d %4d입니다.\n", i, hap); 에 의해

출력은 : 합은2 2입니다.

그런 다음 증가값 부분의 수식을 순차적으로 진행하여

++i로 인해 i는 3이되고 hap += i에 의해 hap은 5가 됩니다.

이어서 종료값을 비교합니다. i<=5에서 Yes이므로 반복문을 진입합니다.

system.out.printf("합은%d %4d입니다.\n", i, hap); 에 의해

출력은 : 합은3 5입니다.

그런 다음 증가값 부분의 수식을 순차적으로 진행하여

++i로 인해 i는 4가되고 hap += i에 의해 hap은 9가 됩니다.

이어서 종료값을 비교합니다. i<=5에서 Yes이므로 반복문을 진입합니다.

system.out.printf("합은%d %4d입니다.\n", i, hap); 에 의해

출력은 : 합은4 9입니다.

그런 다음 증가값 부분의 수식을 순차적으로 진행하여

++i로 인해 i는 5가되고 hap += i에 의해 hap은 14가 됩니다.

이어서 종료값을 비교합니다. i<=5에서 Yes이므로 반복문을 진입합니다.

system.out.printf("합은%d %4d입니다.\n", i, hap); 에 의해

출력은 : 합은5 14입니다.

그런 다음 증가값 부분의 수식을 순차적으로 진행하여

++i로 인해 i는 6이되고 hap += i에 의해 hap은 20이 됩니다.

이어서 종료값을 비교합니다. i<=5에서 No이므로 반복문을 벗어난 후 프로그램을 종료합니다.

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

  • *
    2017-03-10 09:30:18

    안녕하세요.

    먼저 i가 1인 상태에서 종료값을 비교합니다. i<=5에서 Yes이므로 반복문을 진입합니다.

    system.out.printf("합은%d %4d입니다.\n", i, hap); 에 의해

    출력은 : 합은1 0입니다.

    그런 다음 증가값 부분의 수식을 순차적으로 진행하여

    ++i로 인해 i는 2가되고 hap += i에 의해 hap은 2가 됩니다.

    이어서 종료값을 비교합니다. i<=5에서 Yes이므로 반복문을 진입합니다.

    system.out.printf("합은%d %4d입니다.\n", i, hap); 에 의해

    출력은 : 합은2 2입니다.

    그런 다음 증가값 부분의 수식을 순차적으로 진행하여

    ++i로 인해 i는 3이되고 hap += i에 의해 hap은 5가 됩니다.

    이어서 종료값을 비교합니다. i<=5에서 Yes이므로 반복문을 진입합니다.

    system.out.printf("합은%d %4d입니다.\n", i, hap); 에 의해

    출력은 : 합은3 5입니다.

    그런 다음 증가값 부분의 수식을 순차적으로 진행하여

    ++i로 인해 i는 4가되고 hap += i에 의해 hap은 9가 됩니다.

    이어서 종료값을 비교합니다. i<=5에서 Yes이므로 반복문을 진입합니다.

    system.out.printf("합은%d %4d입니다.\n", i, hap); 에 의해

    출력은 : 합은4 9입니다.

    그런 다음 증가값 부분의 수식을 순차적으로 진행하여

    ++i로 인해 i는 5가되고 hap += i에 의해 hap은 14가 됩니다.

    이어서 종료값을 비교합니다. i<=5에서 Yes이므로 반복문을 진입합니다.

    system.out.printf("합은%d %4d입니다.\n", i, hap); 에 의해

    출력은 : 합은5 14입니다.

    그런 다음 증가값 부분의 수식을 순차적으로 진행하여

    ++i로 인해 i는 6이되고 hap += i에 의해 hap은 20이 됩니다.

    이어서 종료값을 비교합니다. i<=5에서 No이므로 반복문을 벗어난 후 프로그램을 종료합니다.

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

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