제가 디버깅한 결과는 첨부한 사진과 같은데요
도대체 왜 b/d를 하는데 15의 경우 15/3 해서
mok 5 nmg 0 이 아니라
mok 7 nmg 1인지도 모르겠구요
c=c+1을 실행한 후인데도 0부터 다시 시작하는지도
옆에있는 q&a베스트를 읽어봐도 이해가 안됩니다
추가질문: 80p. 유형2 디버깅의 경우
i가 1인데 왜 a(i) 처음이 80인가요?
안녕하세요.
1)
B가 15가 되는 과정 중에 D는 아직 2입니다. 앞서 나머지가 0이었으므로 10번 동그라미에서 YES가 되어 아래쪽으로 이동을 했습니다. 나머지가 0이 아닌 경우에는 D를 증가하므로 B가 15일때 D는 아직 2입니다.
그러므로 15를 2로 나눈 MOK은 7이고 NMG는 1이 됩니다.
2)
정답의 디버깅을 표를 볼 때 가로의 위치를 보는 것이 아닙니다.
교재의 정답 디버깅 표는 빈 공백없이 위로 모두 붙여서 표시한 것이므로 가로 위치가 다를 수 있습니다.
각 변수의 세로 값을 변화만 확인하면 됩니다.
i는 초기 1인 상태로 시작하여 i=i+1에 의해 i는 2가 됩니다.
그 상태에서 A(i)는 A(2)가 되죠. 그래서 80이 되는 것입니다.
i가 1일 때 A(i) 80이 아니라
i가 2일 때 A(i)가 80인 것이죠.
오늘도 즐거운 하루 되세요.
"-
*2014-04-14 14:57:16
안녕하세요.
1)
B가 15가 되는 과정 중에 D는 아직 2입니다. 앞서 나머지가 0이었으므로 10번 동그라미에서 YES가 되어 아래쪽으로 이동을 했습니다. 나머지가 0이 아닌 경우에는 D를 증가하므로 B가 15일때 D는 아직 2입니다.
그러므로 15를 2로 나눈 MOK은 7이고 NMG는 1이 됩니다.
2)
정답의 디버깅을 표를 볼 때 가로의 위치를 보는 것이 아닙니다.
교재의 정답 디버깅 표는 빈 공백없이 위로 모두 붙여서 표시한 것이므로 가로 위치가 다를 수 있습니다.
각 변수의 세로 값을 변화만 확인하면 됩니다.
i는 초기 1인 상태로 시작하여 i=i+1에 의해 i는 2가 됩니다.
그 상태에서 A(i)는 A(2)가 되죠. 그래서 80이 되는 것입니다.
i가 1일 때 A(i) 80이 아니라
i가 2일 때 A(i)가 80인 것이죠.
오늘도 즐거운 하루 되세요.
"