9. 실수 타입의 함정 #33
Unanswered
JoisFe
asked this question in
Kotlin 200문제로 격파!
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
9. 실수 타입의 함정
의문점
정수 타입은 실수 타입에 비해 표현 범위도 작고 소수점도 표현할 수 없는데 모든 변수를 실수 타입으로 사용하면 되지 않을까?
정수 값만을 다룬다면 무조건 정수 타입을 사용하는 편이 좋다
실수 타입의 함정
실수 값은 2진수 유효숫자로 표현되기 때문에 상황에 따라 정확한 값을 가리킬 수 없음
위 코드 실행 결과를 보면 알 수 있듯 연산을 거듭할 수록 오차가 누적됨
0.1에 10을 곱하면 오차가 생기지 않은 이유는 10번 더하는 것은 오차가 10번 누적되고 1번 곱하는 것은 오차가 1번만 누적되는 것이기 때문
항상 정확한 결과만을 산출해야 하는 컴퓨터에 이런 특성은 너무 치명적
Reference
초보자를 위한 Kotlin 200제, 정보문화사, [엄민석]
Beta Was this translation helpful? Give feedback.
All reactions