120쪽 46번 문제 답변보고 이해했습니다.
i++ 이나 ++i 에 상관없이
1.초기값부터 시작하여
2.최종값의 조건이 맞으면
3.실행문을 수행하고
4.초기값에서 1을 증가시키고
다시 최종값의 조건이 맞음ㄴ
실행문을 수행한다..
이 순서 맞죠?
114쪽 34번 ..
i hap
0 0
1 1
2 3
3 6
4 10
이 아닌지.. 왜 i가 1일때 hap이 1이아닌 0인지 궁금합니다...ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ
아 계속 고민하다보니 이해가 되는 것같은데 맞는지 한번 봐주세요.....
처음 i와 hap이 0 .
반복문 시작. i의 초기값 = 1
i 가 1이 되고 최종값(조건)확인하여 i가 5보다 작으니
그 밑의 실행문 출력. > i = 0 hap = 0
그 후 i가 1에서 2로 증가 .
증가와 동시에 ,으로 이어진 hap += 1을 실행.
hap = 2
그 밑의 실행문 출력. > i = 2 hap = 2
그 후 i가 2에서 3으로 증가 .
증가와 동시에 ,으로 이어진 hap += 1 을 실행.
hap= 5
.
.
.
이게 맞는거죠?!?!?!!?!??!?!?!?!
제발 맞게 이해했다고 말해주세요..ㅋㅋ
안녕하세요. 길벗 수험서 운영팀입니다.
int i = 0, hap = 0;
for(i = 1; i <= 5; ++i, hap += i)
System.out.printf("합은%d %4d입니다.\n", i, hap);
i는 0, hap은 0으로 시작합니다.
① i가 1이 되고(초기값), 1<=5 참이니 다음 문장으로 갑니다.
② i=1, hap=0 출력
③ i가 2가 되고, hap은 i를 더해 2가 됩니다.(증가값)
④ i=2, hap=2 출력
⑤ i가 3이 되고, hap은 i를 더해 5가 됩니다.(증가값)
⑥ i=3, hap=5 출력
..........
이와 같은 순서입니다.
처음 i가 1이되고 조건을 확인하여 실행문을 출력했는데, i=0, hap=0 이라고 말씀하신 부분 빼고는 맞습니다.
for문의 순서가 헷갈리지 않도록 주의하면서 다음 문제들도 풀어보세요 :)
행복한 하루되세요.^^
-
*2018-10-01 21:23:35
안녕하세요. 길벗 수험서 운영팀입니다.
int i = 0, hap = 0;
for(i = 1; i <= 5; ++i, hap += i)
System.out.printf("합은%d %4d입니다.\n", i, hap);i는 0, hap은 0으로 시작합니다.
① i가 1이 되고(초기값), 1<=5 참이니 다음 문장으로 갑니다.
② i=1, hap=0 출력
③ i가 2가 되고, hap은 i를 더해 2가 됩니다.(증가값)
④ i=2, hap=2 출력
⑤ i가 3이 되고, hap은 i를 더해 5가 됩니다.(증가값)
⑥ i=3, hap=5 출력
..........
이와 같은 순서입니다.
처음 i가 1이되고 조건을 확인하여 실행문을 출력했는데, i=0, hap=0 이라고 말씀하신 부분 빼고는 맞습니다.
for문의 순서가 헷갈리지 않도록 주의하면서 다음 문제들도 풀어보세요 :)
행복한 하루되세요.^^