yooman22   6년 전

             잘못된 부분을 못찾겠습니다..

djm03178   6년 전

1.

예시를 들어봅시다.

0.004 + 0.004를 소수 셋째 자리에서 반올림하면 뭐가 될까요?

0.008을 반올림하니, 0.01이 되어야겠죠? 그런데 이 코드에서는 0.004를 반올림해서 0으로 만들고 둘을 더해서 0이 나옵니다.

2.

실수형은 항상 오차가 발생할 수밖에 없습니다. 단순하게 생각해서 한 번 연산할 때마다 0.0001의 오차가 발생한다고 가정합시다. 그러면 이 연산을 1000번 반복하면, 0.1이나 오차가 납니다.

이 문제는 잘 생각하면 실수 연산은 딱 한 줄 수행하는 것으로 끝낼 수 있습니다.

djm03178   6년 전

이 문제는 오차 허용 범위가 커서 2번의 경우는 신경쓰지 않아도 통과될 것 같지만, 가능한 실수를 답으로 하는 문제에서는 실수 연산을 가능한 줄이는 것이 좋습니다.

yooman22   6년 전

그러면 오차범위를 줄이기 위해서 3번째 자리에서 반올림하는게 아니라 8번째 자리에서 반올림해야 오차가 적어진다는 말씀이 맞나요?

djm03178   6년 전

애초에 반올림을 할 이유 자체가 없습니다. 안 하는 게 제일 정확하죠.

yooman22   6년 전

하하 어떤뜻인지 알았습니다... 

근데 저게 문제가 아닌듯하네요 ㅠㅠ;

댓글을 작성하려면 로그인해야 합니다.