l과 r을 반올림한 값이 서로 같지 않을 동안 반복하면 된다고 하셨는데, 문제 조건을 놓고 보면 소숫점 6번째 자리에서 반올림 했을 때 같아야 반복이 종료가 된다는것 아닌가요?
제가 짠 알고리즘에서 소숫점 8자리에서 반올림한 결과를 나타냈을때
(1) - (2) - (3) 순으로 설명하면
1.4142075 < sqrt(n) < 1.4142151 <-- (1) 출력예시에서는 여기서 끝이 납니다,
1.4142113 < sqrt(n) < 1.4142151
1.4142132 < sqrt(n) < 1.4142151 <-- (3) 여기까지 출력이 되어야하는거 아닌가요?
1.4142132 < sqrt(n) < 1.4142141 <-- (2) 반올림한 값이 동일하므로
이 출력방식을 소숫점 6자리에서 반올림 한 결과로 바꾸면
1.41421 < sqrt(n) < 1.41422
1.41421 < sqrt(n) < 1.41422
1.41421 < sqrt(n) < 1.41422 <-- (2) 여기까지 출력
1.41421 < sqrt(n) < 1.41421 <-- (1) 이 부분에서 값이 같으므로
1.41421 < sqrt(n) < 1.41422 이게 3번이 출력이 됩니다..
제 알고리즘의 문제인가요? 이부분 말고는 출력예시와 동일하게 나오네요 ㅠㅠ