J항의 초기값을 1로 주어서 하나의 항이 빠져서 i값을 19까지 증가 시키게 되어있는데요
4번의 정답은 i<19인데 왜 i<19인지 이해 할 수가 없네요
i<19이면 i는 18까지만 증가 되는것이 아닌가요?
교재 q&a 베스트를 보아도 i를 19까지 증가시키는걸로 되어있는데
제가 잘못이해하고 있는건지 교재가 잘못 된거지 알고싶습니다.
참고로 답안 10page에 디버깅 목록표 보면 i값의 조건에서 18에서는 no로 되어있는데
디버깅결과는 19까지 되었으며 결과도 19까지 증가되어 연산된 결과로 되어있습니다.
확인부탁드립니다~
안녕하세요.
수열에서 종료 기준값은 처리를 하고 비교하는지 비교한 후 처리하는지에 따라 다르므로 반드시 디버깅을 통해 확인해야 합니다.
검은색 ⑤번 동그라미에서 수열의 항을 만드는데,
초기값으로 J는 1을 갖고 K도 1을 갖습니다. 즉 첫 번째 항인 1에 대한 처리를 초기값으로 처리를 하고 시작합니다.
그러므로 20번째 항까지의 합계를 구하지만 실질적으로 검은색 ④~⑦번 과정을 반복하면서 만들어갈 항은 2~19까지 입니다.
결국 검은색 ①~③번 과정은 첫 번째 항을 만드는 과정이고
④번에서 i를 증가시켜 i가 1이 된 후 ⑤번 J=J+i로 인해 J는 2가 됩니다. 두 째 항이 만들어 진 것이죠. i<19 는 Yes이므로 다시 반복
④번에서 i를 증가시켜 i가 2이 된 후 ⑤번 J=J+i로 인해 J는 4가 됩니다. 세 째 항이 만들어 진 것이죠. i<19 는 Yes이므로 다시 반복
④번에서 i를 증가시켜 i가 3이 된 후 ⑤번 J=J+i로 인해 J는 7가 됩니다. 네 째 항이 만들어 진 것이죠. i<19 는 Yes이므로 다시 반복
즉 i가 3일 때 네 번째 항이 만들어진다는 것은 i보다 +1된 번째 항은 만든다는 것이죠.
그래서 i가 19될 때 20번째 항이 만들어지므로 i가 19일 때 i<19에서 No가 되어 출력하게 됩니다.
만일 i<=19라면 한번 더 수행을 하여 21번째 항까지 만들거나
i<18이면 한번 덜 수행하여 19번째 항까지만 만들게 되는 것이죠.
오늘도 즐거운 하루 되세요.
"-
*2015-04-01 09:15:32
안녕하세요.
수열에서 종료 기준값은 처리를 하고 비교하는지 비교한 후 처리하는지에 따라 다르므로 반드시 디버깅을 통해 확인해야 합니다.
검은색 ⑤번 동그라미에서 수열의 항을 만드는데,
초기값으로 J는 1을 갖고 K도 1을 갖습니다. 즉 첫 번째 항인 1에 대한 처리를 초기값으로 처리를 하고 시작합니다.
그러므로 20번째 항까지의 합계를 구하지만 실질적으로 검은색 ④~⑦번 과정을 반복하면서 만들어갈 항은 2~19까지 입니다.
결국 검은색 ①~③번 과정은 첫 번째 항을 만드는 과정이고
④번에서 i를 증가시켜 i가 1이 된 후 ⑤번 J=J+i로 인해 J는 2가 됩니다. 두 째 항이 만들어 진 것이죠. i<19 는 Yes이므로 다시 반복
④번에서 i를 증가시켜 i가 2이 된 후 ⑤번 J=J+i로 인해 J는 4가 됩니다. 세 째 항이 만들어 진 것이죠. i<19 는 Yes이므로 다시 반복
④번에서 i를 증가시켜 i가 3이 된 후 ⑤번 J=J+i로 인해 J는 7가 됩니다. 네 째 항이 만들어 진 것이죠. i<19 는 Yes이므로 다시 반복
즉 i가 3일 때 네 번째 항이 만들어진다는 것은 i보다 +1된 번째 항은 만든다는 것이죠.
그래서 i가 19될 때 20번째 항이 만들어지므로 i가 19일 때 i<19에서 No가 되어 출력하게 됩니다.
만일 i<=19라면 한번 더 수행을 하여 21번째 항까지 만들거나
i<18이면 한번 덜 수행하여 19번째 항까지만 만들게 되는 것이죠.
오늘도 즐거운 하루 되세요.
"