float : 실수

flt_1 = 3.14
flt_2 = 1.0
flt_3 = 123_456.789 # 역시 _ 사용 가능

flt_1_type = str(type(flt_1))
flt_2_type = str(type(flt_2))
flt_3_type = str(type(flt_3))

pass

<aside> ❓ 파이썬에서 float 자료형의 바이트 수, 최대값과 최소값을 얻을 수 있는 코드를 보여줘.

</aside>

<aside> 🧠 파이썬의 float은 메모리에서 24바이트를 차지하는데, 왜 8바이트를 사용하는 다른 언어의 실수 자료형과 표현범위가 같지?

</aside>

계산오차

<aside> 💡 컴퓨터는 이진법으로 숫자를 사용하므로, 아래와 같은 계산 오차들이 자주 발생합니다.

</aside>

# 부동소수점 방식상 오차 자주 있음
a = 0.2 + 0.3
b = 0.2 * 0.7
c = 0.4 - 0.3
d = 0.9 / 0.3
e = 0.9 % 0.6

# 소수부가 2의 거듭제곱인 숫자간 연산은 오차 없음
f = 0.25 * 0.5
g = 0.5 + 0.25 + 0.125 + 0.0625
h = 0.0625 / 0.125
                
pass

🍿 부동소수점 개념 얄코영상

https://youtu.be/ZQDsWySjY6g

<aside> ❓ 파이썬에서 오차 없이 실수들간의 산술 연산을 하려면 어떻게 해야 하지? 확실한 방법들을 예제로 보여줘.

</aside>