CS/SICP

연습문제 1.7

띵킹 2022. 5. 3. 19:22

큰 값을 집어넣거나 아주 작은 값을 넣으면 부동소수점 문제로 인해 올바른 결과를 출력하지 못한다. 

아주 큰 수의 경우, improve가 계속해서 같은 답을 생성하게 되어, good-enough?를 탈출할 수 없는 무한 루프에 빠지게 된다. 

작은 숫자의 경우, good-enough에서 정의한 정밀도로 오차를 계산하는 게 의미가 없음을 직관적으로 알 수 있다. 

 

문제에서 주어진대로 good-enough를 어림잡은 값을 헌값에 견주어 고쳐나가는 방식으로 수정하면, 큰 수와 작은 수에서도 문제없이 작동하게 된다. 

728x90

'CS > SICP' 카테고리의 다른 글

연습문제 1.8  (0) 2022.05.03
연습문제 1.6  (0) 2022.05.03
연습문제 1.5  (0) 2022.05.02
연습문제 1.4  (0) 2022.05.02
연습문제 1.3  (0) 2022.05.02