안녕하세요. 35 페이지를 풀어보고 있는데, 이해가 잘 가지 않아 이렇게 질문드립니다.
i J INT(1/2) i/2 INT(i/2)=i/2 i>99
0 0 0 0.5 NO NO
1 -0.5 1 1 yes NO
이렇게 되어있는데, 왜 0.5로 나뉘나요?
0이라서 음수로써 -0.5가 되는게 아닌가요?
그리고,
i J INT(1/2) i/2 INT(i/2)=i/2 i>99
0.1666667 1 1 1.5 NO NO
이렇게 되어있는데, 왜 0.1666667인가요?
-0.5를 빼거나 더해봐도 저렇게 값이 안나오는데,
혹시 제가 잘못 계산한건가요?
안녕하세요.
i는 0, J는 0을 가지고 시작합니다.
i가 1 증가하여 i는 1이 됩니다.
INT(i/2)는 0이고 i/2는 0.5입니다.
그래서 NO가 되어
J = J - (i / (i + 1))을 계산합니다.
현재 J는 0이고 i는 1이므로
J = 0 - (1 / 2)가 되어 J에는 -0.5가 기억됩니다.
그런 후 다시 처리를 위해 반복하면
i는 1 증가하여 i는 2가 됩니다.
INT(i/2)는 1이고 i/2도 1입니다.
그래서 YES가 되어
J = J + (i / (i + 1))
현재 J는 -0.5이고 i는 2이므로
J = (-0.5) + (2/3) = 0
J = (-0.5) + 0.66666...... 소수점 일정 영역에서 반올림하여 0.66666667로 처리
J = (-0.5) + 0.6666667
J에는 0.1666667이 기억됩니다.
위 과정을 i가 99일 때까지 반복합니다.
오늘도 즐거운 하루 되세요.
-
*2017-03-06 10:15:37
안녕하세요.
i는 0, J는 0을 가지고 시작합니다.
i가 1 증가하여 i는 1이 됩니다.
INT(i/2)는 0이고 i/2는 0.5입니다.
그래서 NO가 되어
J = J - (i / (i + 1))을 계산합니다.
현재 J는 0이고 i는 1이므로
J = 0 - (1 / 2)가 되어 J에는 -0.5가 기억됩니다.
그런 후 다시 처리를 위해 반복하면
i는 1 증가하여 i는 2가 됩니다.
INT(i/2)는 1이고 i/2도 1입니다.
그래서 YES가 되어
J = J + (i / (i + 1))
현재 J는 -0.5이고 i는 2이므로
J = (-0.5) + (2/3) = 0
J = (-0.5) + 0.66666...... 소수점 일정 영역에서 반올림하여 0.66666667로 처리
J = (-0.5) + 0.6666667
J에는 0.1666667이 기억됩니다.
위 과정을 i가 99일 때까지 반복합니다.
오늘도 즐거운 하루 되세요.