책 내용 질문하기
문제34번 for문 문의드려요
도서
2019 시나공 정보처리기사 실기(산업기사포함)
페이지
120,121
조회수
634
작성일
2019-03-03
작성자
탈퇴*원
첨부파일

문제 34번                                       

int i = 0, hap = 0

for(i = 1 : i<= 5 : ++i, hap += i)

 System.out.printf("합은%d %4d입니다.\", i, hap):

디버깅

i  hap 반복횟수

0   0

1   0    1

2   2    2

3   5    3

.

.

출력

합은1       0입니다.   for문 집입시 초기값i 1이 조건을 만족하지 않으므로 i를 바로 1증가시켜 2를 hap에 누적하고

합은2       2입니다.   출력하는데 출력은 1부터 합니다. 이해가 되질 않습니다.

.

.

.



 

 

답변
2019-03-05 13:45:34

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

 

for문에 대해 다시 한 번 학습해보시길 권합니다.

 

for(i = 1; i <= 5; ++i, hap += i) 에서 i=1은 조건이 아닌 초기값을 부여하는 식입니다. 

 

1. for문에 들어오게 되면 i는 무조건 1을 부여받습니다.

2. i<=5 조건식을 판단합니다. i는 1이므로 참입니다.

3. 출력 1, 0

4. ++i, hap+=i를 수행합니다. i=2, hap=2

5. i<=5 조건식을 판단합니다. i는 2이므로 참입니다.

5. 출력 2, 2

6. ++i, hap+=i를 수행합니다. i=3, hap=5

.,

,

,

n. 출력 5, 14

n+1. ++i, hap+=i를 수행합니다. i=6, hap=20

n+2. i<=5 조건식을 판단합니다. i는 6이므로 거짓입니다. 

종료

 

행복한 하루되세요 :)

  • 관리자
    2019-03-05 13:45:34

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

     

    for문에 대해 다시 한 번 학습해보시길 권합니다.

     

    for(i = 1; i <= 5; ++i, hap += i) 에서 i=1은 조건이 아닌 초기값을 부여하는 식입니다. 

     

    1. for문에 들어오게 되면 i는 무조건 1을 부여받습니다.

    2. i<=5 조건식을 판단합니다. i는 1이므로 참입니다.

    3. 출력 1, 0

    4. ++i, hap+=i를 수행합니다. i=2, hap=2

    5. i<=5 조건식을 판단합니다. i는 2이므로 참입니다.

    5. 출력 2, 2

    6. ++i, hap+=i를 수행합니다. i=3, hap=5

    .,

    ,

    ,

    n. 출력 5, 14

    n+1. ++i, hap+=i를 수행합니다. i=6, hap=20

    n+2. i<=5 조건식을 판단합니다. i는 6이므로 거짓입니다. 

    종료

     

    행복한 하루되세요 :)

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