인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

Inflearn Community Q&A

hirwigo's profile image
hirwigo

asked

Getting Started with Programming: Introduction to Python (Inflearn Original)

Numeric type (1-1): The basis of calculation is numeric type.

파이썬으로 곱셈계산시 실제 계산값과 다릅니다.

Written on

·

332

·

Edited

0

 소수점이 들어간 곱셈을 하면 파이썬과 계산기가 다릅니다.

예를들면 2050 * 1.00014를 해보겠습니다.

실제 계산값은 2050.287 이 나옵니다.

그러나 파이썬은 2050.2870000000003이 나오는데요.

뒤에 0.0000000000003 이게 왜 붙는거죠?

혹시나 해서 2050.287과 2050*1.00014가 같은지도 물어보니 역시 다른 값으로 인식합니다.

round 함수를 사용한다면 교정할 수 있겠지만,

이런 문제가 왜 생기는 것인지,

그리고 이런 문제를 근본적으로 해결할 수 있는 방법이 궁금합니다.

파이썬 질문.jpg

 

python

Answer 1

0

niceman님의 프로필 이미지
niceman
Instructor

안녕하세요.

부동소수점에 대해서 질문을 주셨네요.

실수범위를 완벽하게 표현할 수 없습니다.

이는 파이썬의 문제가 아니라 각 언어에서도 중요한 부분이예요.

내용이 방대해지니 링크를 하나 드리겠습니다.

한 번 읽어보세요.

"부동소수점(실수를 제대로 표현할 수 없는 이유)

https://dataonair.or.kr/db-tech-reference/d-lounge/expert-column/?mod=document&uid=52381#:~:text=%EC%88%98%ED%95%99%20%EA%B5%90%EA%B3%BC%20%EA%B3%BC%EC%A0%95%EC%97%90%EC%84%9C%20%EB%B0%B0%EC%9A%B4,%ED%91%9C%ED%98%84%ED%95%A0%20%EC%88%98%20%EC%97%86%EA%B8%B0%20%EB%95%8C%EB%AC%B8%EC%9D%B4%EB%8B%A4.

 

hirwigo's profile image
hirwigo

asked

Ask a question