두번째 for문 i가 0이라고하고
for(j=i+1 ; j<n ; j++)이니
j 가 3까지 실행하는것아닌가요?
i가 0이니까 j가 1부터 시작한다고 하면 n(4)보다 작은 3이아니라 왜 4까지 실행하는건가요?
안녕하세요 길벗수험서 운영팀입니다.
for문의 수행 순서를 알아두실 필요가 있습니다.
for문을 간략화 시키면 다음과 같습니다.
for(①; ②; ③)
④;
for문이 5회 반복한다고 가정할 때 다음과 같이 각 부분이 수행됩니다.
1회 : ①, ②(조건 참), ④
2회 : ③, ②(조건 참), ④
3회 : ③, ②(조건 참), ④
4회 : ③, ②(조건 참), ④
5회 : ③, ②(조건 참), ④
종료 : ③, ②(조건 거짓) <탈출>
이와 같이 마지막(종료 시점)에 수행되는 증가값(③)으로 인해 조건이 거짓이 되고 빠져나가기 때문에 j<n이 거짓이 되는 j가 4가 되고 나서 for문을 벗어나게 됩니다.
(j가 4가 되는 시점에서는 내부 코드가 수행되지 않는다는 점에 주의하세요.)
행복한 하루되세요 :)
-
관리자2021-04-21 11:09:27
안녕하세요 길벗수험서 운영팀입니다.
for문의 수행 순서를 알아두실 필요가 있습니다.
for문을 간략화 시키면 다음과 같습니다.
for(①; ②; ③)
④;
for문이 5회 반복한다고 가정할 때 다음과 같이 각 부분이 수행됩니다.
1회 : ①, ②(조건 참), ④
2회 : ③, ②(조건 참), ④
3회 : ③, ②(조건 참), ④
4회 : ③, ②(조건 참), ④
5회 : ③, ②(조건 참), ④
종료 : ③, ②(조건 거짓) <탈출>
이와 같이 마지막(종료 시점)에 수행되는 증가값(③)으로 인해 조건이 거짓이 되고 빠져나가기 때문에 j<n이 거짓이 되는 j가 4가 되고 나서 for문을 벗어나게 됩니다.
(j가 4가 되는 시점에서는 내부 코드가 수행되지 않는다는 점에 주의하세요.)
행복한 하루되세요 :)