5번에 보면
i < 10 이 답인데 왜 이렇게 되는지 모르겠어요
개인적인 생각으로
1번에서
J = 1 이다 라고 첫번째 항을 우선 주어졌으니
i < 9 가 되야하지 않나요?
안녕하세요.
i가 1을 가지고 시작하므로 합을 저장하는 K도 1을 가지고 시작합니다.
즉 처리과정은 2~10의 과정을 수행한다는 것이죠.
i는 1인 상태로 처리 과정을 진입합니다.
i가 증가되서 i가 2인 상태로 처리하고 묻습니다. i < 10 ? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 3인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 4인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 5인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 6인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 7인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 8인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 9인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
여기서 i < 9 라고 물었다면 현재 i가 9인데 .. 9는 9보다 작지 않으므로 No가 됩니다. 그러면 종료되죠. 즉 i가 9인 상태로 종료된다는 것은 9까지만 처리했다는 것입니다. 그래서 i < 10으로 진행해야 10까지 처리할 수 있는 것입니다.
순서도는 디버깅을 수행해서 과정을 모두 진행해 보면 결과를 확인할 수 있습니다. 특히 종료 기준값이 애매할 때는 더욱 그렇죠.
오늘도 즐거운 하루 되세요.
"-
*2012-03-07 09:35:39
안녕하세요.
i가 1을 가지고 시작하므로 합을 저장하는 K도 1을 가지고 시작합니다.
즉 처리과정은 2~10의 과정을 수행한다는 것이죠.
i는 1인 상태로 처리 과정을 진입합니다.
i가 증가되서 i가 2인 상태로 처리하고 묻습니다. i < 10 ? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 3인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 4인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 5인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 6인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 7인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 8인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
i가 증가되서 i가 9인 상태로 처리하고 또 묻습니다. i < 10? Yes 이므로 다시 처리 과정을 수행합니다.
여기서 i < 9 라고 물었다면 현재 i가 9인데 .. 9는 9보다 작지 않으므로 No가 됩니다. 그러면 종료되죠. 즉 i가 9인 상태로 종료된다는 것은 9까지만 처리했다는 것입니다. 그래서 i < 10으로 진행해야 10까지 처리할 수 있는 것입니다.
순서도는 디버깅을 수행해서 과정을 모두 진행해 보면 결과를 확인할 수 있습니다. 특히 종료 기준값이 애매할 때는 더욱 그렇죠.
오늘도 즐거운 하루 되세요.
"