안녕하세요.
우선 좋은 교재 만들어주셔서 감사합니다.
반복문에서 반복변수 증가 시점이 정확히 언제인지 궁금해서요.
반복문안에서 처리문 처리 후 그 반복문을 나오기 전에 반복변수를 증가시키는 건가요,
아님 반복문을 빠져나오고 다시 시작하여할때 반복변수를 증가시켜주는 건가요?
저는 나오기 직전에 증가시켜주는 걸로 알고 있어서
반복변수에 대한 제 답이 항상 교재답보다 1이 큽니다.
반복변수 증가 시점이 정확히 언제인지 알려주시면 감사하겠습니다.
안녕하세요.
반복문의 원리는
i = 1, 5, 1의 경우
i가 초기값 1을 갖고 반복문을 수행합니다.
i가 증가치(1)를 적용한 후 i가 2가 되어 종료 기준값(5)과 비교한 후 종료 기준값보다 크지 않으므로 반복문을 수행합니다.
i가 증가치(1)를 적용한 후 i가 3이 되어 종료 기준값(5)과 비교한 후 종료 기준값보다 크지 않으므로 반복문을 수행합니다.
i가 증가치(1)를 적용한 후 i가 4가 되어 종료 기준값(5)과 비교한 후 종료 기준값보다 크지 않으므로 반복문을 수행합니다.
i가 증가치(1)를 적용한 후 i가 5가 되어 종료 기준값(5)과 비교한 후 종료 기준값보다 같으므로 반복문을 수행합니다.
i가 증가치(1)를 적용한 후 i가 6이 되어 종료 기준값(5)과 비교한 후 종료 기준값보다 크므로 반복문을 빠져나옵니다.
이와 같이 증가치를 적용한 후 종료 기준값과 비교하여 반복문 수행 여부를 판단하기 때문에 마지막 종료될 때 증가치가 한번 더 적용된 상태의 값을 가지고 반복문을 빠져나오게 되는 것이죠.
하지만 보통 반복문에서 사용한 반복변수가 반복문 이후에 사용되는 경우가 들물어 디버깅을 할 때 i를 5까지만 기술합니다. 실질적으로는 6으로 빠져나오지만 이후 사용될 필요가 없다면 5까지만 기술하여 공간을 절약하는 것이죠.
그러니 반복문의 반복 변수는 증가치가 한번 더 적용된다고 이해하시면 됩니다.
오늘도 즐거운 하루 되세요.
-
*2013-09-04 09:32:18
안녕하세요.
반복문의 원리는
i = 1, 5, 1의 경우
i가 초기값 1을 갖고 반복문을 수행합니다.
i가 증가치(1)를 적용한 후 i가 2가 되어 종료 기준값(5)과 비교한 후 종료 기준값보다 크지 않으므로 반복문을 수행합니다.
i가 증가치(1)를 적용한 후 i가 3이 되어 종료 기준값(5)과 비교한 후 종료 기준값보다 크지 않으므로 반복문을 수행합니다.
i가 증가치(1)를 적용한 후 i가 4가 되어 종료 기준값(5)과 비교한 후 종료 기준값보다 크지 않으므로 반복문을 수행합니다.
i가 증가치(1)를 적용한 후 i가 5가 되어 종료 기준값(5)과 비교한 후 종료 기준값보다 같으므로 반복문을 수행합니다.
i가 증가치(1)를 적용한 후 i가 6이 되어 종료 기준값(5)과 비교한 후 종료 기준값보다 크므로 반복문을 빠져나옵니다.
이와 같이 증가치를 적용한 후 종료 기준값과 비교하여 반복문 수행 여부를 판단하기 때문에 마지막 종료될 때 증가치가 한번 더 적용된 상태의 값을 가지고 반복문을 빠져나오게 되는 것이죠.
하지만 보통 반복문에서 사용한 반복변수가 반복문 이후에 사용되는 경우가 들물어 디버깅을 할 때 i를 5까지만 기술합니다. 실질적으로는 6으로 빠져나오지만 이후 사용될 필요가 없다면 5까지만 기술하여 공간을 절약하는 것이죠.
그러니 반복문의 반복 변수는 증가치가 한번 더 적용된다고 이해하시면 됩니다.
오늘도 즐거운 하루 되세요.